/**
 * Cloudflare ZARAZ API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service zaraz
 */
import * as Schema from "effect/Schema";
import type * as HttpClient from "effect/unstable/http/HttpClient";
import * as API from "../client/api.ts";
import type { Credentials } from "../credentials.ts";
import { type DefaultErrors } from "../errors.ts";
export interface GetConfigRequest {
    /** Identifier. */
    zoneId: string;
}
export declare const GetConfigRequest: Schema.Schema<GetConfigRequest>;
export interface GetConfigResponse {
    /** Data layer compatibility mode enabled. */
    dataLayer: boolean;
    /** The key for Zaraz debug mode. */
    debugKey: string;
    /** General Zaraz settings. */
    settings: {
        autoInjectScript: boolean;
        contextEnricher?: {
            escapedWorkerName: string;
            workerTag: string;
        } | null;
        cookieDomain?: string | null;
        ecommerce?: boolean | null;
        eventsApiPath?: string | null;
        hideExternalReferer?: boolean | null;
        hideIPAddress?: boolean | null;
        hideQueryParams?: boolean | null;
        hideUserAgent?: boolean | null;
        initPath?: string | null;
        injectIframes?: boolean | null;
        mcRootPath?: string | null;
        scriptPath?: string | null;
        trackPath?: string | null;
    };
    /** Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object. */
    tools: Record<string, unknown>;
    /** Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration. */
    triggers: Record<string, unknown>;
    /** Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included. */
    variables: Record<string, unknown>;
    /** Zaraz internal version of the config. */
    zarazVersion: number;
    /** Cloudflare Monitoring settings. */
    analytics?: {
        defaultPurpose?: string | null;
        enabled?: boolean | null;
        sessionExpTime?: number | null;
    } | null;
    /** Consent management configuration. */
    consent?: {
        enabled: boolean;
        buttonTextTranslations?: {
            acceptAll: Record<string, unknown>;
            confirmMyChoices: Record<string, unknown>;
            rejectAll: Record<string, unknown>;
        } | null;
        companyEmail?: string | null;
        companyName?: string | null;
        companyStreetAddress?: string | null;
        consentModalIntroHTML?: string | null;
        consentModalIntroHTMLWithTranslations?: Record<string, unknown> | null;
        cookieName?: string | null;
        customCSS?: string | null;
        customIntroDisclaimerDismissed?: boolean | null;
        defaultLanguage?: string | null;
        hideModal?: boolean | null;
        purposes?: Record<string, unknown> | null;
        purposesWithTranslations?: Record<string, unknown> | null;
        tcfCompliant?: boolean | null;
    } | null;
    /** Single Page Application support enabled. */
    historyChange?: boolean | null;
}
export declare const GetConfigResponse: Schema.Schema<GetConfigResponse>;
export type GetConfigError = DefaultErrors;
export declare const getConfig: API.OperationMethod<GetConfigRequest, GetConfigResponse, GetConfigError, Credentials | HttpClient.HttpClient>;
export interface PutConfigRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Body param: Data layer compatibility mode enabled. */
    dataLayer: boolean;
    /** Body param: The key for Zaraz debug mode. */
    debugKey: string;
    /** Body param: General Zaraz settings. */
    settings: {
        autoInjectScript: boolean;
        contextEnricher?: {
            escapedWorkerName: string;
            workerTag: string;
        };
        cookieDomain?: string;
        ecommerce?: boolean;
        eventsApiPath?: string;
        hideExternalReferer?: boolean;
        hideIPAddress?: boolean;
        hideQueryParams?: boolean;
        hideUserAgent?: boolean;
        initPath?: string;
        injectIframes?: boolean;
        mcRootPath?: string;
        scriptPath?: string;
        trackPath?: string;
    };
    /** Body param: Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object. */
    tools: Record<string, unknown>;
    /** Body param: Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration. */
    triggers: Record<string, unknown>;
    /** Body param: Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included. */
    variables: Record<string, unknown>;
    /** Body param: Zaraz internal version of the config. */
    zarazVersion: number;
    /** Body param: Cloudflare Monitoring settings. */
    analytics?: {
        defaultPurpose?: string;
        enabled?: boolean;
        sessionExpTime?: number;
    };
    /** Body param: Consent management configuration. */
    consent?: {
        enabled: boolean;
        buttonTextTranslations?: {
            acceptAll: Record<string, unknown>;
            confirmMyChoices: Record<string, unknown>;
            rejectAll: Record<string, unknown>;
        };
        companyEmail?: string;
        companyName?: string;
        companyStreetAddress?: string;
        consentModalIntroHTML?: string;
        consentModalIntroHTMLWithTranslations?: Record<string, unknown>;
        cookieName?: string;
        customCSS?: string;
        customIntroDisclaimerDismissed?: boolean;
        defaultLanguage?: string;
        hideModal?: boolean;
        purposes?: Record<string, unknown>;
        purposesWithTranslations?: Record<string, unknown>;
        tcfCompliant?: boolean;
    };
    /** Body param: Single Page Application support enabled. */
    historyChange?: boolean;
}
export declare const PutConfigRequest: Schema.Schema<PutConfigRequest>;
export interface PutConfigResponse {
    /** Data layer compatibility mode enabled. */
    dataLayer: boolean;
    /** The key for Zaraz debug mode. */
    debugKey: string;
    /** General Zaraz settings. */
    settings: {
        autoInjectScript: boolean;
        contextEnricher?: {
            escapedWorkerName: string;
            workerTag: string;
        } | null;
        cookieDomain?: string | null;
        ecommerce?: boolean | null;
        eventsApiPath?: string | null;
        hideExternalReferer?: boolean | null;
        hideIPAddress?: boolean | null;
        hideQueryParams?: boolean | null;
        hideUserAgent?: boolean | null;
        initPath?: string | null;
        injectIframes?: boolean | null;
        mcRootPath?: string | null;
        scriptPath?: string | null;
        trackPath?: string | null;
    };
    /** Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object. */
    tools: Record<string, unknown>;
    /** Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration. */
    triggers: Record<string, unknown>;
    /** Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included. */
    variables: Record<string, unknown>;
    /** Zaraz internal version of the config. */
    zarazVersion: number;
    /** Cloudflare Monitoring settings. */
    analytics?: {
        defaultPurpose?: string | null;
        enabled?: boolean | null;
        sessionExpTime?: number | null;
    } | null;
    /** Consent management configuration. */
    consent?: {
        enabled: boolean;
        buttonTextTranslations?: {
            acceptAll: Record<string, unknown>;
            confirmMyChoices: Record<string, unknown>;
            rejectAll: Record<string, unknown>;
        } | null;
        companyEmail?: string | null;
        companyName?: string | null;
        companyStreetAddress?: string | null;
        consentModalIntroHTML?: string | null;
        consentModalIntroHTMLWithTranslations?: Record<string, unknown> | null;
        cookieName?: string | null;
        customCSS?: string | null;
        customIntroDisclaimerDismissed?: boolean | null;
        defaultLanguage?: string | null;
        hideModal?: boolean | null;
        purposes?: Record<string, unknown> | null;
        purposesWithTranslations?: Record<string, unknown> | null;
        tcfCompliant?: boolean | null;
    } | null;
    /** Single Page Application support enabled. */
    historyChange?: boolean | null;
}
export declare const PutConfigResponse: Schema.Schema<PutConfigResponse>;
export type PutConfigError = DefaultErrors;
export declare const putConfig: API.OperationMethod<PutConfigRequest, PutConfigResponse, PutConfigError, Credentials | HttpClient.HttpClient>;
export interface GetDefaultRequest {
    /** Identifier. */
    zoneId: string;
}
export declare const GetDefaultRequest: Schema.Schema<GetDefaultRequest>;
export interface GetDefaultResponse {
    /** Data layer compatibility mode enabled. */
    dataLayer: boolean;
    /** The key for Zaraz debug mode. */
    debugKey: string;
    /** General Zaraz settings. */
    settings: {
        autoInjectScript: boolean;
        contextEnricher?: {
            escapedWorkerName: string;
            workerTag: string;
        } | null;
        cookieDomain?: string | null;
        ecommerce?: boolean | null;
        eventsApiPath?: string | null;
        hideExternalReferer?: boolean | null;
        hideIPAddress?: boolean | null;
        hideQueryParams?: boolean | null;
        hideUserAgent?: boolean | null;
        initPath?: string | null;
        injectIframes?: boolean | null;
        mcRootPath?: string | null;
        scriptPath?: string | null;
        trackPath?: string | null;
    };
    /** Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object. */
    tools: Record<string, unknown>;
    /** Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration. */
    triggers: Record<string, unknown>;
    /** Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included. */
    variables: Record<string, unknown>;
    /** Zaraz internal version of the config. */
    zarazVersion: number;
    /** Cloudflare Monitoring settings. */
    analytics?: {
        defaultPurpose?: string | null;
        enabled?: boolean | null;
        sessionExpTime?: number | null;
    } | null;
    /** Consent management configuration. */
    consent?: {
        enabled: boolean;
        buttonTextTranslations?: {
            acceptAll: Record<string, unknown>;
            confirmMyChoices: Record<string, unknown>;
            rejectAll: Record<string, unknown>;
        } | null;
        companyEmail?: string | null;
        companyName?: string | null;
        companyStreetAddress?: string | null;
        consentModalIntroHTML?: string | null;
        consentModalIntroHTMLWithTranslations?: Record<string, unknown> | null;
        cookieName?: string | null;
        customCSS?: string | null;
        customIntroDisclaimerDismissed?: boolean | null;
        defaultLanguage?: string | null;
        hideModal?: boolean | null;
        purposes?: Record<string, unknown> | null;
        purposesWithTranslations?: Record<string, unknown> | null;
        tcfCompliant?: boolean | null;
    } | null;
    /** Single Page Application support enabled. */
    historyChange?: boolean | null;
}
export declare const GetDefaultResponse: Schema.Schema<GetDefaultResponse>;
export type GetDefaultError = DefaultErrors;
export declare const getDefault: API.OperationMethod<GetDefaultRequest, GetDefaultResponse, GetDefaultError, Credentials | HttpClient.HttpClient>;
export interface GetExportRequest {
    /** Identifier. */
    zoneId: string;
}
export declare const GetExportRequest: Schema.Schema<GetExportRequest>;
export interface GetExportResponse {
    /** Data layer compatibility mode enabled. */
    dataLayer: boolean;
    /** The key for Zaraz debug mode. */
    debugKey: string;
    /** General Zaraz settings. */
    settings: {
        autoInjectScript: boolean;
        contextEnricher?: {
            escapedWorkerName: string;
            workerTag: string;
        } | null;
        cookieDomain?: string | null;
        ecommerce?: boolean | null;
        eventsApiPath?: string | null;
        hideExternalReferer?: boolean | null;
        hideIPAddress?: boolean | null;
        hideQueryParams?: boolean | null;
        hideUserAgent?: boolean | null;
        initPath?: string | null;
        injectIframes?: boolean | null;
        mcRootPath?: string | null;
        scriptPath?: string | null;
        trackPath?: string | null;
    };
    /** Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object. */
    tools: Record<string, unknown>;
    /** Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration. */
    triggers: Record<string, unknown>;
    /** Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included. */
    variables: Record<string, unknown>;
    /** Zaraz internal version of the config. */
    zarazVersion: number;
    /** Cloudflare Monitoring settings. */
    analytics?: {
        defaultPurpose?: string | null;
        enabled?: boolean | null;
        sessionExpTime?: number | null;
    } | null;
    /** Consent management configuration. */
    consent?: {
        enabled: boolean;
        buttonTextTranslations?: {
            acceptAll: Record<string, unknown>;
            confirmMyChoices: Record<string, unknown>;
            rejectAll: Record<string, unknown>;
        } | null;
        companyEmail?: string | null;
        companyName?: string | null;
        companyStreetAddress?: string | null;
        consentModalIntroHTML?: string | null;
        consentModalIntroHTMLWithTranslations?: Record<string, unknown> | null;
        cookieName?: string | null;
        customCSS?: string | null;
        customIntroDisclaimerDismissed?: boolean | null;
        defaultLanguage?: string | null;
        hideModal?: boolean | null;
        purposes?: Record<string, unknown> | null;
        purposesWithTranslations?: Record<string, unknown> | null;
        tcfCompliant?: boolean | null;
    } | null;
    /** Single Page Application support enabled. */
    historyChange?: boolean | null;
}
export declare const GetExportResponse: Schema.Schema<GetExportResponse>;
export type GetExportError = DefaultErrors;
export declare const getExport: API.OperationMethod<GetExportRequest, GetExportResponse, GetExportError, Credentials | HttpClient.HttpClient>;
export interface ListHistoriesRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Query param: Maximum amount of results to list. Default value is 10. */
    limit?: number;
    /** Query param: Ordinal number to start listing the results with. Default value is 0. */
    offset?: number;
    /** Query param: The field to sort by. Default is updated_at. */
    sortField?: "id" | "user_id" | "description" | "created_at" | "updated_at";
    /** Query param: Sorting order. Default is DESC. */
    sortOrder?: "DESC" | "ASC";
}
export declare const ListHistoriesRequest: Schema.Schema<ListHistoriesRequest>;
export interface ListHistoriesResponse {
    result: {
        id: number;
        createdAt: string;
        description: string;
        updatedAt: string;
        userId: string;
    }[];
}
export declare const ListHistoriesResponse: Schema.Schema<ListHistoriesResponse>;
export type ListHistoriesError = DefaultErrors;
export declare const listHistories: API.PaginatedOperationMethod<ListHistoriesRequest, ListHistoriesResponse, ListHistoriesError, Credentials | HttpClient.HttpClient>;
export interface PutHistoryRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Body param: ID of the Zaraz configuration to restore. */
    body: number;
}
export declare const PutHistoryRequest: Schema.Schema<PutHistoryRequest>;
export interface PutHistoryResponse {
    /** Data layer compatibility mode enabled. */
    dataLayer: boolean;
    /** The key for Zaraz debug mode. */
    debugKey: string;
    /** General Zaraz settings. */
    settings: {
        autoInjectScript: boolean;
        contextEnricher?: {
            escapedWorkerName: string;
            workerTag: string;
        } | null;
        cookieDomain?: string | null;
        ecommerce?: boolean | null;
        eventsApiPath?: string | null;
        hideExternalReferer?: boolean | null;
        hideIPAddress?: boolean | null;
        hideQueryParams?: boolean | null;
        hideUserAgent?: boolean | null;
        initPath?: string | null;
        injectIframes?: boolean | null;
        mcRootPath?: string | null;
        scriptPath?: string | null;
        trackPath?: string | null;
    };
    /** Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object. */
    tools: Record<string, unknown>;
    /** Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration. */
    triggers: Record<string, unknown>;
    /** Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included. */
    variables: Record<string, unknown>;
    /** Zaraz internal version of the config. */
    zarazVersion: number;
    /** Cloudflare Monitoring settings. */
    analytics?: {
        defaultPurpose?: string | null;
        enabled?: boolean | null;
        sessionExpTime?: number | null;
    } | null;
    /** Consent management configuration. */
    consent?: {
        enabled: boolean;
        buttonTextTranslations?: {
            acceptAll: Record<string, unknown>;
            confirmMyChoices: Record<string, unknown>;
            rejectAll: Record<string, unknown>;
        } | null;
        companyEmail?: string | null;
        companyName?: string | null;
        companyStreetAddress?: string | null;
        consentModalIntroHTML?: string | null;
        consentModalIntroHTMLWithTranslations?: Record<string, unknown> | null;
        cookieName?: string | null;
        customCSS?: string | null;
        customIntroDisclaimerDismissed?: boolean | null;
        defaultLanguage?: string | null;
        hideModal?: boolean | null;
        purposes?: Record<string, unknown> | null;
        purposesWithTranslations?: Record<string, unknown> | null;
        tcfCompliant?: boolean | null;
    } | null;
    /** Single Page Application support enabled. */
    historyChange?: boolean | null;
}
export declare const PutHistoryResponse: Schema.Schema<PutHistoryResponse>;
export type PutHistoryError = DefaultErrors;
export declare const putHistory: API.OperationMethod<PutHistoryRequest, PutHistoryResponse, PutHistoryError, Credentials | HttpClient.HttpClient>;
export interface GetHistoryConfigRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Query param: Comma separated list of Zaraz configuration IDs */
    ids: number[];
}
export declare const GetHistoryConfigRequest: Schema.Schema<GetHistoryConfigRequest>;
export type GetHistoryConfigResponse = Record<string, unknown>;
export declare const GetHistoryConfigResponse: Schema.Schema<GetHistoryConfigResponse>;
export type GetHistoryConfigError = DefaultErrors;
export declare const getHistoryConfig: API.OperationMethod<GetHistoryConfigRequest, GetHistoryConfigResponse, GetHistoryConfigError, Credentials | HttpClient.HttpClient>;
export interface CreatePublishRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Body param: Zaraz configuration description. */
    body?: string;
}
export declare const CreatePublishRequest: Schema.Schema<CreatePublishRequest>;
export type CreatePublishResponse = string;
export declare const CreatePublishResponse: Schema.Schema<CreatePublishResponse>;
export type CreatePublishError = DefaultErrors;
export declare const createPublish: API.OperationMethod<CreatePublishRequest, CreatePublishResponse, CreatePublishError, Credentials | HttpClient.HttpClient>;
export interface GetWorkflowRequest {
    /** Identifier. */
    zoneId: string;
}
export declare const GetWorkflowRequest: Schema.Schema<GetWorkflowRequest>;
export type GetWorkflowResponse = "realtime" | "preview";
export declare const GetWorkflowResponse: Schema.Schema<GetWorkflowResponse>;
export type GetWorkflowError = DefaultErrors;
export declare const getWorkflow: API.OperationMethod<GetWorkflowRequest, GetWorkflowResponse, GetWorkflowError, Credentials | HttpClient.HttpClient>;
export interface PutZarazRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Body param: Zaraz workflow */
    workflow: "realtime" | "preview";
}
export declare const PutZarazRequest: Schema.Schema<PutZarazRequest>;
export type PutZarazResponse = "realtime" | "preview";
export declare const PutZarazResponse: Schema.Schema<PutZarazResponse>;
export type PutZarazError = DefaultErrors;
export declare const putZaraz: API.OperationMethod<PutZarazRequest, PutZarazResponse, PutZarazError, Credentials | HttpClient.HttpClient>;
//# sourceMappingURL=zaraz.d.ts.map