type AuthToken = string | undefined;
interface Auth {
    /**
     * Which part of the request do we use to send the auth?
     *
     * @default 'header'
     */
    in?: 'header' | 'query' | 'cookie';
    /**
     * Header or query parameter name.
     *
     * @default 'Authorization'
     */
    name?: string;
    scheme?: 'basic' | 'bearer';
    type: 'apiKey' | 'http';
}

interface SerializerOptions<T> {
    /**
     * @default true
     */
    explode: boolean;
    style: T;
}
type ArrayStyle = 'form' | 'spaceDelimited' | 'pipeDelimited';
type ObjectStyle = 'form' | 'deepObject';

type QuerySerializer = (query: Record<string, unknown>) => string;
type BodySerializer = (body: any) => any;
type QuerySerializerOptionsObject = {
    allowReserved?: boolean;
    array?: Partial<SerializerOptions<ArrayStyle>>;
    object?: Partial<SerializerOptions<ObjectStyle>>;
};
type QuerySerializerOptions = QuerySerializerOptionsObject & {
    /**
     * Per-parameter serialization overrides. When provided, these settings
     * override the global array/object settings for specific parameter names.
     */
    parameters?: Record<string, QuerySerializerOptionsObject>;
};

type HttpMethod = 'connect' | 'delete' | 'get' | 'head' | 'options' | 'patch' | 'post' | 'put' | 'trace';
type Client$1<RequestFn = never, Config = unknown, MethodFn = never, BuildUrlFn = never, SseFn = never> = {
    /**
     * Returns the final request URL.
     */
    buildUrl: BuildUrlFn;
    getConfig: () => Config;
    request: RequestFn;
    setConfig: (config: Config) => Config;
} & {
    [K in HttpMethod]: MethodFn;
} & ([SseFn] extends [never] ? {
    sse?: never;
} : {
    sse: {
        [K in HttpMethod]: SseFn;
    };
});
interface Config$1 {
    /**
     * Auth token or a function returning auth token. The resolved value will be
     * added to the request payload as defined by its `security` array.
     */
    auth?: ((auth: Auth) => Promise<AuthToken> | AuthToken) | AuthToken;
    /**
     * A function for serializing request body parameter. By default,
     * {@link JSON.stringify()} will be used.
     */
    bodySerializer?: BodySerializer | null;
    /**
     * An object containing any HTTP headers that you want to pre-populate your
     * `Headers` object with.
     *
     * {@link https://developer.mozilla.org/docs/Web/API/Headers/Headers#init See more}
     */
    headers?: RequestInit['headers'] | Record<string, string | number | boolean | (string | number | boolean)[] | null | undefined | unknown>;
    /**
     * The request method.
     *
     * {@link https://developer.mozilla.org/docs/Web/API/fetch#method See more}
     */
    method?: Uppercase<HttpMethod>;
    /**
     * A function for serializing request query parameters. By default, arrays
     * will be exploded in form style, objects will be exploded in deepObject
     * style, and reserved characters are percent-encoded.
     *
     * This method will have no effect if the native `paramsSerializer()` Axios
     * API function is used.
     *
     * {@link https://swagger.io/docs/specification/serialization/#query View examples}
     */
    querySerializer?: QuerySerializer | QuerySerializerOptions;
    /**
     * A function validating request data. This is useful if you want to ensure
     * the request conforms to the desired shape, so it can be safely sent to
     * the server.
     */
    requestValidator?: (data: unknown) => Promise<unknown>;
    /**
     * A function transforming response data before it's returned. This is useful
     * for post-processing data, e.g. converting ISO strings into Date objects.
     */
    responseTransformer?: (data: unknown) => Promise<unknown>;
    /**
     * A function validating response data. This is useful if you want to ensure
     * the response conforms to the desired shape, so it can be safely passed to
     * the transformers and returned to the user.
     */
    responseValidator?: (data: unknown) => Promise<unknown>;
}

type ServerSentEventsOptions<TData = unknown> = Omit<RequestInit, 'method'> & Pick<Config$1, 'method' | 'responseTransformer' | 'responseValidator'> & {
    /**
     * Fetch API implementation. You can use this option to provide a custom
     * fetch instance.
     *
     * @default globalThis.fetch
     */
    fetch?: typeof fetch;
    /**
     * Implementing clients can call request interceptors inside this hook.
     */
    onRequest?: (url: string, init: RequestInit) => Promise<Request>;
    /**
     * Callback invoked when a network or parsing error occurs during streaming.
     *
     * This option applies only if the endpoint returns a stream of events.
     *
     * @param error The error that occurred.
     */
    onSseError?: (error: unknown) => void;
    /**
     * Callback invoked when an event is streamed from the server.
     *
     * This option applies only if the endpoint returns a stream of events.
     *
     * @param event Event streamed from the server.
     * @returns Nothing (void).
     */
    onSseEvent?: (event: StreamEvent<TData>) => void;
    serializedBody?: RequestInit['body'];
    /**
     * Default retry delay in milliseconds.
     *
     * This option applies only if the endpoint returns a stream of events.
     *
     * @default 3000
     */
    sseDefaultRetryDelay?: number;
    /**
     * Maximum number of retry attempts before giving up.
     */
    sseMaxRetryAttempts?: number;
    /**
     * Maximum retry delay in milliseconds.
     *
     * Applies only when exponential backoff is used.
     *
     * This option applies only if the endpoint returns a stream of events.
     *
     * @default 30000
     */
    sseMaxRetryDelay?: number;
    /**
     * Optional sleep function for retry backoff.
     *
     * Defaults to using `setTimeout`.
     */
    sseSleepFn?: (ms: number) => Promise<void>;
    url: string;
};
interface StreamEvent<TData = unknown> {
    data: TData;
    event?: string;
    id?: string;
    retry?: number;
}
type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unknown> = {
    stream: AsyncGenerator<TData extends Record<string, unknown> ? TData[keyof TData] : TData, TReturn, TNext>;
};

type ErrInterceptor<Err, Res, Req, Options> = (error: Err, response: Res, request: Req, options: Options) => Err | Promise<Err>;
type ReqInterceptor<Req, Options> = (request: Req, options: Options) => Req | Promise<Req>;
type ResInterceptor<Res, Req, Options> = (response: Res, request: Req, options: Options) => Res | Promise<Res>;
declare class Interceptors<Interceptor> {
    fns: Array<Interceptor | null>;
    clear(): void;
    eject(id: number | Interceptor): void;
    exists(id: number | Interceptor): boolean;
    getInterceptorIndex(id: number | Interceptor): number;
    update(id: number | Interceptor, fn: Interceptor): number | Interceptor | false;
    use(fn: Interceptor): number;
}
interface Middleware<Req, Res, Err, Options> {
    error: Interceptors<ErrInterceptor<Err, Res, Req, Options>>;
    request: Interceptors<ReqInterceptor<Req, Options>>;
    response: Interceptors<ResInterceptor<Res, Req, Options>>;
}

type ResponseStyle = 'data' | 'fields';
interface Config<T extends ClientOptions$1 = ClientOptions$1> extends Omit<RequestInit, 'body' | 'headers' | 'method'>, Config$1 {
    /**
     * Base URL for all requests made by this client.
     */
    baseUrl?: T['baseUrl'];
    /**
     * Fetch API implementation. You can use this option to provide a custom
     * fetch instance.
     *
     * @default globalThis.fetch
     */
    fetch?: typeof fetch;
    /**
     * Please don't use the Fetch client for Next.js applications. The `next`
     * options won't have any effect.
     *
     * Install {@link https://www.npmjs.com/package/@hey-api/client-next `@hey-api/client-next`} instead.
     */
    next?: never;
    /**
     * Return the response data parsed in a specified format. By default, `auto`
     * will infer the appropriate method from the `Content-Type` response header.
     * You can override this behavior with any of the {@link Body} methods.
     * Select `stream` if you don't want to parse response data at all.
     *
     * @default 'auto'
     */
    parseAs?: 'arrayBuffer' | 'auto' | 'blob' | 'formData' | 'json' | 'stream' | 'text';
    /**
     * Should we return only data or multiple fields (data, error, response, etc.)?
     *
     * @default 'fields'
     */
    responseStyle?: ResponseStyle;
    /**
     * Throw an error instead of returning it in the response?
     *
     * @default false
     */
    throwOnError?: T['throwOnError'];
}
interface RequestOptions<TData = unknown, TResponseStyle extends ResponseStyle = 'fields', ThrowOnError extends boolean = boolean, Url extends string = string> extends Config<{
    responseStyle: TResponseStyle;
    throwOnError: ThrowOnError;
}>, Pick<ServerSentEventsOptions<TData>, 'onSseError' | 'onSseEvent' | 'sseDefaultRetryDelay' | 'sseMaxRetryAttempts' | 'sseMaxRetryDelay'> {
    /**
     * Any body that you want to add to your request.
     *
     * {@link https://developer.mozilla.org/docs/Web/API/fetch#body}
     */
    body?: unknown;
    path?: Record<string, unknown>;
    query?: Record<string, unknown>;
    /**
     * Security mechanism(s) to use for the request.
     */
    security?: ReadonlyArray<Auth>;
    url: Url;
}
interface ResolvedRequestOptions<TResponseStyle extends ResponseStyle = 'fields', ThrowOnError extends boolean = boolean, Url extends string = string> extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
    serializedBody?: string;
}
type RequestResult<TData = unknown, TError = unknown, ThrowOnError extends boolean = boolean, TResponseStyle extends ResponseStyle = 'fields'> = ThrowOnError extends true ? Promise<TResponseStyle extends 'data' ? TData extends Record<string, unknown> ? TData[keyof TData] : TData : {
    data: TData extends Record<string, unknown> ? TData[keyof TData] : TData;
    request: Request;
    response: Response;
}> : Promise<TResponseStyle extends 'data' ? (TData extends Record<string, unknown> ? TData[keyof TData] : TData) | undefined : ({
    data: TData extends Record<string, unknown> ? TData[keyof TData] : TData;
    error: undefined;
} | {
    data: undefined;
    error: TError extends Record<string, unknown> ? TError[keyof TError] : TError;
}) & {
    request: Request;
    response: Response;
}>;
interface ClientOptions$1 {
    baseUrl?: string;
    responseStyle?: ResponseStyle;
    throwOnError?: boolean;
}
type MethodFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
type SseFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>) => Promise<ServerSentEventsResult<TData, TError>>;
type RequestFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'> & Pick<Required<RequestOptions<TData, TResponseStyle, ThrowOnError>>, 'method'>) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
type BuildUrlFn = <TData extends {
    body?: unknown;
    path?: Record<string, unknown>;
    query?: Record<string, unknown>;
    url: string;
}>(options: TData & Options$1<TData>) => string;
type Client = Client$1<RequestFn, Config, MethodFn, BuildUrlFn, SseFn> & {
    interceptors: Middleware<Request, Response, unknown, ResolvedRequestOptions>;
};
interface TDataShape {
    body?: unknown;
    headers?: unknown;
    path?: unknown;
    query?: unknown;
    url: string;
}
type OmitKeys<T, K> = Pick<T, Exclude<keyof T, K>>;
type Options$1<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown, TResponseStyle extends ResponseStyle = 'fields'> = OmitKeys<RequestOptions<TResponse, TResponseStyle, ThrowOnError>, 'body' | 'path' | 'query' | 'url'> & ([TData] extends [never] ? unknown : Omit<TData, 'url'>);

type ClientOptions = {
    baseUrl: 'https://a.klaviyo.com' | (string & {});
};
type CouponEnum = 'coupon';
type CouponResponseObjectResource = {
    type: CouponEnum;
    /**
     * The internal id of a Coupon is equivalent to its external id stored within an integration.
     */
    id: string;
    attributes: {
        /**
         * This is the id that is stored in an integration such as Shopify or Magento.
         */
        external_id: string;
        /**
         * A description of the coupon.
         */
        description?: string | null;
        /**
         * The monitor configuration for the coupon.
         */
        monitor_configuration?: {
            [key: string]: unknown;
        } | null;
    };
    links: ObjectLinks;
};
type GetCouponResponseCollection = {
    data: Array<CouponResponseObjectResource>;
    links?: CollectionLinks;
};
type GetCouponResponse = {
    data: CouponResponseObjectResource;
    links?: ObjectLinks;
};
type GetCouponCodeCouponRelationshipResponse = {
    data: {
        type: CouponEnum;
        /**
         * The internal id of a Coupon is equivalent to its external id stored within an integration.
         */
        id: string;
    };
    links?: ObjectLinks;
};
type CouponCodeEnum = 'coupon-code';
type CouponCodeResponseObjectResource = {
    type: CouponCodeEnum;
    /**
     * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
     */
    id: string;
    attributes: {
        /**
         * This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon.
         */
        unique_code?: string | null;
        /**
         * The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.
         */
        expires_at?: string | null;
        /**
         * The current status of the coupon code.
         */
        status?: 'ASSIGNED_TO_PROFILE' | 'DELETING' | 'PROCESSING' | 'UNASSIGNED' | 'USED' | 'VERSION_NOT_ACTIVE';
    };
    links: ObjectLinks;
};
type GetCouponCodeResponseCollectionCompoundDocument = {
    data: Array<CouponCodeResponseObjectResource & {
        relationships?: {
            coupon?: {
                data?: {
                    type: CouponEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            profile?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<CouponResponseObjectResource>;
};
type GetCouponCodeResponseCompoundDocument = {
    data: CouponCodeResponseObjectResource & {
        relationships?: {
            coupon?: {
                data?: {
                    type: CouponEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            profile?: {
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CouponResponseObjectResource>;
    links?: ObjectLinks;
};
type GetCouponCodeResponseCollection = {
    data: Array<CouponCodeResponseObjectResource & {
        relationships?: {
            coupon?: {
                links?: RelationshipLinks;
            };
            profile?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCouponCodesRelationshipsResponseCollection = {
    data: Array<{
        type: CouponCodeEnum;
        /**
         * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type CatalogItemEnum = 'catalog-item';
type CatalogVariantEnum = 'catalog-variant';
type CatalogVariantResponseObjectResource = {
    type: CatalogVariantEnum;
    /**
     * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
    attributes: {
        /**
         * The ID of the catalog item variant in an external system.
         */
        external_id?: string | null;
        /**
         * The title of the catalog item variant.
         */
        title?: string | null;
        /**
         * A description of the catalog item variant.
         */
        description?: string | null;
        /**
         * The SKU of the catalog item variant.
         */
        sku?: string | null;
        /**
         * This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values:
         * `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock.
         * `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.
         */
        inventory_policy?: 0 | 1 | 2;
        /**
         * The quantity of the catalog item variant currently in stock.
         */
        inventory_quantity?: number | null;
        /**
         * This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).
         */
        price?: number | null;
        /**
         * URL pointing to the location of the catalog item variant on your website.
         */
        url?: string | null;
        /**
         * URL pointing to the location of a full image of the catalog item variant.
         */
        image_full_url?: string | null;
        /**
         * URL pointing to the location of an image thumbnail of the catalog item variant.
         */
        image_thumbnail_url?: string | null;
        /**
         * List of URLs pointing to the locations of images of the catalog item variant.
         */
        images?: Array<string> | null;
        /**
         * Flat JSON blob to provide custom metadata about the catalog item variant. May not exceed 100kb.
         */
        custom_metadata?: {
            [key: string]: unknown;
        } | null;
        /**
         * Boolean value indicating whether the catalog item variant is published.
         */
        published?: boolean | null;
        /**
         * Date and time when the catalog item  variant was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created?: string | null;
        /**
         * Date and time when the catalog item variant was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        updated?: string | null;
    };
    links: ObjectLinks;
};
type CatalogItemResponseObjectResource = {
    type: CatalogItemEnum;
    /**
     * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
    attributes: {
        /**
         * The ID of the catalog item in an external system.
         */
        external_id?: string | null;
        /**
         * The title of the catalog item.
         */
        title?: string | null;
        /**
         * A description of the catalog item.
         */
        description?: string | null;
        /**
         * This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).
         */
        price?: number | null;
        /**
         * URL pointing to the location of the catalog item on your website.
         */
        url?: string | null;
        /**
         * URL pointing to the location of a full image of the catalog item.
         */
        image_full_url?: string | null;
        /**
         * URL pointing to the location of an image thumbnail of the catalog item
         */
        image_thumbnail_url?: string | null;
        /**
         * List of URLs pointing to the locations of images of the catalog item.
         */
        images?: Array<string> | null;
        /**
         * Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.
         */
        custom_metadata?: {
            [key: string]: unknown;
        } | null;
        /**
         * Boolean value indicating whether the catalog item is published.
         */
        published?: boolean | null;
        /**
         * Date and time when the catalog item was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created?: string | null;
        /**
         * Date and time when the catalog item was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        updated?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogItemResponseCollectionCompoundDocument = {
    data: Array<CatalogItemResponseObjectResource & {
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<CatalogVariantResponseObjectResource>;
};
type GetCatalogItemResponseCompoundDocument = {
    data: CatalogItemResponseObjectResource & {
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogVariantResponseObjectResource>;
    links?: ObjectLinks;
};
type GetCatalogCategoryItemsRelationshipsResponseCollection = {
    data: Array<{
        type: CatalogItemEnum;
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetCatalogVariantResponseCollection = {
    data: Array<CatalogVariantResponseObjectResource & {
        relationships?: {
            item?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogVariantResponse = {
    data: CatalogVariantResponseObjectResource & {
        relationships?: {
            item?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetCatalogItemVariantsRelationshipsResponseCollection = {
    data: Array<{
        type: CatalogVariantEnum;
        /**
         * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type CatalogCategoryEnum = 'catalog-category';
type CatalogCategoryResponseObjectResource = {
    type: CatalogCategoryEnum;
    /**
     * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
    attributes: {
        /**
         * The ID of the catalog category in an external system.
         */
        external_id?: string | null;
        /**
         * The name of the catalog category.
         */
        name?: string | null;
        /**
         * Date and time when the catalog category was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        updated?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogCategoryResponseCollection = {
    data: Array<CatalogCategoryResponseObjectResource & {
        relationships?: {
            items?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogCategoryResponse = {
    data: CatalogCategoryResponseObjectResource & {
        relationships?: {
            items?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type ErrorSource = {
    /**
     * A pointer to the source of the error in the request payload.
     */
    pointer?: string | null;
};
type ApiJobErrorPayload = {
    /**
     * Unique identifier for the error.
     */
    id: string;
    /**
     * A code for classifying the error type.
     */
    code: string;
    /**
     * A high-level message about the error.
     */
    title: string;
    /**
     * Specific details about the error.
     */
    detail: string;
    source: ErrorSource;
};
type CouponCodeBulkCreateJobEnum = 'coupon-code-bulk-create-job';
type CouponCodeCreateJobResponseObjectResource = {
    type: CouponCodeBulkCreateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCouponCodeCreateJobResponseCollectionCompoundDocument = {
    data: Array<CouponCodeCreateJobResponseObjectResource & {
        relationships?: {
            'coupon-codes'?: {
                data?: Array<{
                    type: CouponCodeEnum;
                    /**
                     * IDs of the created coupon codes.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCouponCodeCreateJobResponseCompoundDocument = {
    data: CouponCodeCreateJobResponseObjectResource & {
        relationships?: {
            'coupon-codes'?: {
                data?: Array<{
                    type: CouponCodeEnum;
                    /**
                     * IDs of the created coupon codes.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CouponCodeResponseObjectResource>;
    links?: ObjectLinks;
};
type GetCatalogItemCategoriesRelationshipsResponseCollection = {
    data: Array<{
        type: CatalogCategoryEnum;
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type EventEnum = 'event';
type ProfileEnum = 'profile';
type MetricEnum = 'metric';
type AttributionEnum = 'attribution';
type FlowEnum = 'flow';
type MetricResponseObjectResource = {
    type: MetricEnum;
    /**
     * The Metric ID
     */
    id: string;
    attributes: {
        /**
         * The name of the metric
         */
        name?: string | null;
        /**
         * Creation time in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Last updated time in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * The integration associated with the event
         */
        integration?: {
            [key: string]: unknown;
        } | null;
    };
    links: ObjectLinks;
};
type ProfileLocation = {
    /**
     * First line of street address
     */
    address1?: string | null;
    /**
     * Second line of street address
     */
    address2?: string | null;
    /**
     * City name
     */
    city?: string | null;
    /**
     * Country name
     */
    country?: string | null;
    /**
     * Latitude coordinate. We recommend providing a precision of four decimal places.
     */
    latitude?: string | number | null;
    /**
     * Longitude coordinate. We recommend providing a precision of four decimal places.
     */
    longitude?: string | number | null;
    /**
     * Region within a country, such as state or province
     */
    region?: string | null;
    /**
     * Zip code
     */
    zip?: string | null;
    /**
     * Time zone name. We recommend using time zones from the IANA Time Zone Database.
     */
    timezone?: string | null;
    /**
     * IP Address
     */
    ip?: string | null;
};
type EmailMarketingSuppression = {
    /**
     * The reason the profile was suppressed.
     */
    reason: 'HARD_BOUNCE' | 'INVALID_EMAIL' | 'SPAM_COMPLAINT' | 'UNSUBSCRIBE' | 'USER_SUPPRESSED';
    /**
     * The timestamp when the profile was suppressed, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    timestamp: string;
};
type EmailMarketingListSuppression = {
    /**
     * The ID of list to which the suppression applies.
     */
    list_id: string;
    /**
     * The reason the profile was suppressed from the list.
     */
    reason: string;
    /**
     * The timestamp when the profile was suppressed from the list, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    timestamp: string;
};
type EmailMarketing = {
    /**
     * Whether or not this profile has implicit consent to receive email marketing. True if it does profile does not have any global suppressions.
     */
    can_receive_email_marketing: boolean;
    /**
     * The consent status for email marketing.
     */
    consent: string;
    /**
     * The timestamp when consent was recorded or updated for email marketing, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
    /**
     * The timestamp when a field on the email marketing object was last modified.
     */
    last_updated?: string | null;
    /**
     * The method by which the profile was subscribed to email marketing.
     */
    method?: string | null;
    /**
     * Additional details about the method by which the profile was subscribed to email marketing. This may be empty if no details were provided.
     */
    method_detail?: string | null;
    /**
     * Additional detail provided by the caller when the profile was subscribed. This may be empty if no details were provided.
     */
    custom_method_detail?: string | null;
    /**
     * Whether the profile was subscribed to email marketing using a double opt-in.
     */
    double_optin?: boolean | null;
    /**
     * The global email marketing suppression for this profile.
     */
    suppression?: Array<EmailMarketingSuppression> | null;
    /**
     * The list suppressions for this profile.
     */
    list_suppressions?: Array<EmailMarketingListSuppression> | null;
};
type EmailChannel = {
    marketing?: EmailMarketing;
};
type SmsMarketing = {
    /**
     * Whether or not this profile is subscribed to receive SMS marketing.
     */
    can_receive_sms_marketing: boolean;
    /**
     * The consent status for SMS marketing.
     */
    consent: string;
    /**
     * The timestamp when consent was recorded or updated for SMS marketing, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
    /**
     * The method by which the profile was subscribed to SMS marketing.
     */
    method?: string | null;
    /**
     * Additional details about the method which the profile was subscribed to SMS marketing. This may be empty if no details were provided.
     */
    method_detail?: string | null;
    /**
     * The timestamp when the SMS consent record was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    last_updated?: string | null;
};
type SmsTransactional = {
    /**
     * Whether or not this profile is subscribed to receive transactional SMS.
     */
    can_receive_sms_transactional: boolean;
    /**
     * The consent status for SMS Transactional.
     */
    consent: string;
    /**
     * The timestamp when consent was recorded or updated for Transactional SMS messaging , in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
    /**
     * The method by which the profile was subscribed to Transactional SMS messaging .
     */
    method?: string | null;
    /**
     * Additional details about the method which the profile was subscribed to Transactional SMS messaging. This may be empty if no details were provided.
     */
    method_detail?: string | null;
    /**
     * The timestamp when the SMS consent record was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    last_updated?: string | null;
};
type SmsChannel = {
    marketing?: SmsMarketing;
    transactional?: SmsTransactional;
};
type PushMarketing = {
    /**
     * Whether or not this profile is subscribed to receive mobile push.
     */
    can_receive_push_marketing: boolean;
    /**
     * The consent status for mobile push marketing.
     */
    consent: string;
    /**
     * The timestamp when the consent was last changed, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
};
type PushChannel = {
    marketing?: PushMarketing;
};
type WhatsappMarketingChannel = {
    /**
     * The consent status for the channel.
     */
    consent: string;
    /**
     * The timestamp when consent was recorded or updated for the channel, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
    /**
     * The timestamp when the channel was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    last_updated?: string | null;
    /**
     * The timestamp when the channel was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    created_timestamp?: string | null;
    /**
     * Channel-specific metadata containing additional information about the permission.
     */
    metadata?: {
        [key: string]: unknown;
    } | null;
    /**
     * Whether the profile can receive messages on this channel.
     */
    can_receive: boolean;
    /**
     * Optional expiration date for the permission, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    valid_until?: string | null;
    /**
     * Phone number to which the consent was granted for.
     */
    phone_number: string;
};
type WhatsappTransactionalChannel = {
    /**
     * The consent status for the channel.
     */
    consent: string;
    /**
     * The timestamp when consent was recorded or updated for the channel, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
    /**
     * The timestamp when the channel was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    last_updated?: string | null;
    /**
     * The timestamp when the channel was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    created_timestamp?: string | null;
    /**
     * Channel-specific metadata containing additional information about the permission.
     */
    metadata?: {
        [key: string]: unknown;
    } | null;
    /**
     * Whether the profile can receive messages on this channel.
     */
    can_receive: boolean;
    /**
     * Optional expiration date for the permission, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    valid_until?: string | null;
    /**
     * Phone number to which the consent was granted for.
     */
    phone_number: string;
};
type WhatsappConversationalChannel = {
    /**
     * The consent status for the channel.
     */
    consent: string;
    /**
     * The timestamp when consent was recorded or updated for the channel, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    consent_timestamp?: string | null;
    /**
     * The timestamp when the channel was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    last_updated?: string | null;
    /**
     * The timestamp when the channel was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    created_timestamp?: string | null;
    /**
     * Channel-specific metadata containing additional information about the permission.
     */
    metadata?: {
        [key: string]: unknown;
    } | null;
    /**
     * Whether the profile can receive messages on this channel.
     */
    can_receive: boolean;
    /**
     * Optional expiration date for the permission, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
     */
    valid_until?: string | null;
    /**
     * Phone number to which the consent was granted for.
     */
    phone_number: string;
};
type WhatsappChannel = {
    marketing?: WhatsappMarketingChannel;
    transactional?: WhatsappTransactionalChannel;
    conversational?: WhatsappConversationalChannel;
};
type Subscriptions = {
    email?: EmailChannel;
    sms?: SmsChannel;
    mobile_push?: PushChannel;
    whatsapp?: WhatsappChannel;
};
type PredictiveAnalytics = {
    /**
     * Total value of all historically placed orders
     */
    historic_clv?: number | null;
    /**
     * Predicted value of all placed orders in the next 365 days
     */
    predicted_clv?: number | null;
    /**
     * Sum of historic and predicted CLV
     */
    total_clv?: number | null;
    /**
     * Number of already placed orders
     */
    historic_number_of_orders?: number | null;
    /**
     * Predicted number of placed orders in the next 365 days
     */
    predicted_number_of_orders?: number | null;
    /**
     * Average number of days between orders (None if only one order has been placed)
     */
    average_days_between_orders?: number | null;
    /**
     * Average value of placed orders
     */
    average_order_value?: number | null;
    /**
     * Probability the customer has churned
     */
    churn_probability?: number | null;
    /**
     * Expected date of next order, as calculated at the time of their most recent order
     */
    expected_date_of_next_order?: string | null;
    /**
     * List of channels ranked by their predicted effectiveness for this profile, with the best channel being listed first at index 0
     */
    ranked_channel_affinity?: Array<'email' | 'push' | 'sms'> | null;
};
type ListEnum = 'list';
type SegmentEnum = 'segment';
type PushTokenEnum = 'push-token';
type ProfileResponseObjectResource = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        /**
         * Date and time when the profile was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the profile was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * Date and time of the most recent event the triggered an update to the profile, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        last_event_date?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
    };
    links: ObjectLinks;
};
type CampaignEnum = 'campaign';
type CampaignMessageEnum = 'campaign-message';
type FlowMessageEnum = 'flow-message';
type AttributionResponseObjectResource = {
    type: AttributionEnum;
    /**
     * The ID of the attribution
     */
    id: string;
    relationships?: {
        event?: {
            data?: {
                type: EventEnum;
                /**
                 * Event
                 */
                id: string;
            };
        };
        'attributed-event'?: {
            data?: {
                type: EventEnum;
                /**
                 * Attributed Event
                 */
                id: string;
            };
        };
        campaign?: {
            data?: {
                type: CampaignEnum;
                /**
                 * Attributed Campaign
                 */
                id: string;
            };
        };
        'campaign-message'?: {
            data?: {
                type: CampaignMessageEnum;
                /**
                 * Attributed Campaign Message
                 */
                id: string;
            };
        };
        flow?: {
            data?: {
                type: FlowEnum;
                /**
                 * Attributed Flow
                 */
                id: string;
            };
        };
        'flow-message'?: {
            data?: {
                type: FlowMessageEnum;
                /**
                 * Attributed Flow Message
                 */
                id: string;
            };
        };
        'flow-message-variation'?: {
            data?: {
                type: FlowMessageEnum;
                /**
                 * Attributed Flow Message Variation
                 */
                id: string;
            };
        };
    };
    links: ObjectLinks;
};
type EventResponseObjectResource = {
    type: EventEnum;
    /**
     * The Event ID
     */
    id: string;
    attributes: {
        /**
         * Event timestamp in seconds
         */
        timestamp?: number | null;
        /**
         * Event properties, can include identifiers and extra properties
         */
        event_properties?: {
            [key: string]: unknown;
        } | null;
        /**
         * Event timestamp in ISO8601 format (YYYY-MM-DDTHH:MM:SS+hh:mm)
         */
        datetime?: string | null;
        /**
         * A unique identifier for the event, this can be used as a cursor in pagination
         */
        uuid?: string | null;
    };
    links: ObjectLinks;
};
type GetEventResponseCollectionCompoundDocument = {
    data: Array<EventResponseObjectResource & {
        relationships?: {
            profile?: {
                data?: {
                    type: ProfileEnum;
                    /**
                     * Profile ID of the associated profile, if available
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            metric?: {
                data?: {
                    type: MetricEnum;
                    /**
                     * The Metric ID
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            attributions?: {
                data?: Array<{
                    type: AttributionEnum;
                    /**
                     * Attributions for this event
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<MetricResponseObjectResource | ProfileResponseObjectResource | AttributionResponseObjectResource>;
};
type GetEventResponseCompoundDocument = {
    data: EventResponseObjectResource & {
        relationships?: {
            profile?: {
                data?: {
                    type: ProfileEnum;
                    /**
                     * Profile ID of the associated profile, if available
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            metric?: {
                data?: {
                    type: MetricEnum;
                    /**
                     * The Metric ID
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            attributions?: {
                data?: Array<{
                    type: AttributionEnum;
                    /**
                     * Attributions for this event
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<MetricResponseObjectResource | ProfileResponseObjectResource | AttributionResponseObjectResource>;
    links?: ObjectLinks;
};
type GetMetricResponse = {
    data: MetricResponseObjectResource & {
        relationships?: {
            'flow-triggers'?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetEventMetricRelationshipResponse = {
    data: {
        type: MetricEnum;
        /**
         * The Metric ID
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetProfileResponse = {
    data: ProfileResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ProfileEnum;
        attributes?: {
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
    };
    links?: ObjectLinks;
};
type GetEventProfileRelationshipResponse = {
    data: {
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id: string;
    };
    links?: ObjectLinks;
};
type FlowActionEnum = 'flow-action';
type TagEnum = 'tag';
type FlowResponseObjectResource = {
    type: FlowEnum;
    id: string;
    attributes: {
        name?: string | null;
        status?: string | null;
        archived?: boolean | null;
        created?: string | null;
        updated?: string | null;
        /**
         * Corresponds to the object which triggered the flow.
         */
        trigger_type?: 'Added to List' | 'Date Based' | 'Low Inventory' | 'Metric' | 'Price Drop' | 'Unconfigured';
    };
    links: ObjectLinks;
};
type GetMetricResponseCollectionCompoundDocument = {
    data: Array<MetricResponseObjectResource & {
        relationships?: {
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<FlowResponseObjectResource>;
};
type GetMetricResponseCompoundDocument = {
    data: MetricResponseObjectResource & {
        relationships?: {
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<FlowResponseObjectResource>;
    links?: ObjectLinks;
};
type GetFlowResponseCollection = {
    data: Array<FlowResponseObjectResource & {
        relationships?: {
            'flow-actions'?: {
                links?: RelationshipLinks;
            };
            tags?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetMetricFlowTriggersRelationshipsResponseCollection = {
    data: Array<{
        type: FlowEnum;
        id: string;
    }>;
    links?: CollectionLinks;
};
type TagGroupEnum = 'tag-group';
type TagResponseObjectResource = {
    type: TagEnum;
    /**
     * The Tag ID
     */
    id: string;
    attributes: {
        /**
         * The Tag name
         */
        name: string;
    };
    links: ObjectLinks;
};
type ListListResponseObjectResource = {
    type: ListEnum;
    /**
     * Primary key that uniquely identifies this list. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * A helpful name to label the list
         */
        name?: string | null;
        /**
         * Date and time when the list was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the list was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'.
         */
        opt_in_process?: 'double_opt_in' | 'single_opt_in';
    };
    links: ObjectLinks;
};
type GetListListResponseCollectionCompoundDocument = {
    data: Array<ListListResponseObjectResource & {
        relationships?: {
            profiles?: {
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<TagResponseObjectResource | FlowResponseObjectResource>;
};
type ListRetrieveResponseObjectResource = {
    type: ListEnum;
    /**
     * Primary key that uniquely identifies this list. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * A helpful name to label the list
         */
        name?: string | null;
        /**
         * Date and time when the list was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the list was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'.
         */
        opt_in_process?: 'double_opt_in' | 'single_opt_in';
    };
    links: ObjectLinks;
};
type GetListRetrieveResponseCompoundDocument = {
    data: ListRetrieveResponseObjectResource & {
        relationships?: {
            profiles?: {
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ListEnum;
        attributes?: {
            profile_count?: number | null;
        };
    };
    included?: Array<TagResponseObjectResource | FlowResponseObjectResource>;
    links?: ObjectLinks;
};
type GetTagResponseCollection = {
    data: Array<TagResponseObjectResource & {
        relationships?: {
            'tag-group'?: {
                links?: RelationshipLinks;
            };
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            campaigns?: {
                links?: RelationshipLinks;
            };
            flows?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetListTagsRelationshipsResponseCollection = {
    data: Array<{
        type: TagEnum;
        /**
         * The Tag ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type ListMemberResponseObjectResource = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        /**
         * Date and time when the profile was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the profile was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * Date and time of the most recent event the triggered an update to the profile, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        last_event_date?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
        /**
         * The datetime when this profile most recently joined the list.
         */
        joined_group_at: string;
    };
    links: ObjectLinks;
};
type GetListMemberResponseCollection = {
    data: Array<ListMemberResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ProfileEnum;
        attributes?: {
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
    }>;
    links?: CollectionLinks;
};
type GetListProfilesRelationshipsResponseCollection = {
    data: Array<{
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetListFlowTriggersRelationshipsResponseCollection = {
    data: Array<{
        type: FlowEnum;
        id: string;
    }>;
    links?: CollectionLinks;
};
type ProfileGroupMembershipEnum = 'profile-group-membership';
type DateEnum = 'date';
type StaticDateFilter = {
    type: DateEnum;
    /**
     * Operators for static date filters.
     *
     * E.g. "before 2023-01-01"
     */
    operator: 'after' | 'before';
    date: string;
};
type StaticDateRangeFilter = {
    type: DateEnum;
    /**
     * Operators for static date range filters.
     *
     * E.g. "between 2023-01-01 and 2023-02-01"
     */
    operator: 'between-static';
    start: string;
    end: string;
};
type RelativeDateOperatorBaseRelativeDateFilter = {
    type: DateEnum;
    /**
     * Operators for relative date filters.
     *
     * e.g. "in the last 10 days"
     */
    operator: 'at-least' | 'in-the-last' | 'in-the-next';
    /**
     * Units for relative date filters.
     */
    unit: 'day' | 'hour' | 'week';
    quantity: number;
};
type RelativeDateRangeFilter = {
    type: DateEnum;
    /**
     * Operators for relative date range filters.
     *
     * e.g. "between 10 and 20 days ago"
     */
    operator: 'between';
    start: number;
    end: number;
    /**
     * Units for relative date filters.
     */
    unit: 'day' | 'hour' | 'week';
};
type ProfileHasGroupMembershipCondition = {
    type: ProfileGroupMembershipEnum;
    is_member: true;
    group_ids: Array<string>;
    timeframe_filter?: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeDateRangeFilter | null;
};
type ProfileNoGroupMembershipCondition = {
    type: ProfileGroupMembershipEnum;
    is_member: false;
    group_ids: Array<string>;
};
type ProfileMetricEnum = 'profile-metric';
type NumericEnum = 'numeric';
type NumericOperatorNumericFilter = {
    type: NumericEnum;
    /**
     * Operators for numeric filters.
     */
    operator: 'equals' | 'greater-than' | 'greater-than-or-equal' | 'less-than' | 'less-than-or-equal' | 'not-equals';
    value: number | number;
};
type RelativeAnniversaryDateFilter = {
    type: DateEnum;
    /**
     * Operators for relative date filters.
     *
     * e.g. "anniversary in the last 10 days"
     */
    operator: 'anniversary-last' | 'anniversary-next';
    /**
     * Units for relative date filters.
     */
    unit: 'day' | 'hour' | 'week';
    quantity: number;
};
type AlltimeDateFilter = {
    type: DateEnum;
    /**
     * Operators for alltime date filters.
     */
    operator: 'alltime';
};
type StringEnum = 'string';
type StringOperatorStringFilter = {
    type: StringEnum;
    /**
     * Operators for string filters.
     */
    operator: 'contains' | 'ends-with' | 'equals' | 'not-contains' | 'not-ends-with' | 'not-equals' | 'not-starts-with' | 'nregex' | 'regex' | 'starts-with';
    value: string | null;
};
type StringArrayOperatorStringArrayFilter = {
    type: StringEnum;
    /**
     * Operators for string-in-array filters.
     */
    operator: 'in' | 'not-in';
    value: Array<string>;
};
type ExistenceEnum = 'existence';
type ExistenceOperatorExistenceFilter = {
    type: ExistenceEnum;
    /**
     * Operators for existence filters.
     */
    operator: 'is-set' | 'not-set';
};
type ListSetFilter = {
    type: ListEnum;
    /**
     * Operators for list contains set filters.
     */
    operator: 'contains-all' | 'contains-any' | 'not-contains-all' | 'not-contains-any';
    value: Array<string>;
};
type ListLengthFilter = {
    type: ListEnum;
    /**
     * Operators for list length filters.
     */
    operator: 'length-equals' | 'length-greater-than' | 'length-greater-than-or-equal' | 'length-less-than' | 'length-less-than-or-equal';
    value: number;
};
type ListSubstringFilter = {
    type: ListEnum;
    /**
     * Operators for list substring filters.
     */
    operator: 'contains-substring' | 'not-contains-substring';
    value: string | null;
};
type BooleanEnum = 'boolean';
type BooleanFilter = {
    type: BooleanEnum;
    /**
     * Operators for boolean filters.
     */
    operator: 'equals';
    value: boolean;
};
type ProfileMetricPropertyFilter = {
    property: string;
    filter?: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | ExistenceOperatorExistenceFilter | ListSetFilter | ListLengthFilter | ListSubstringFilter | BooleanFilter | NumericOperatorNumericFilter | null;
};
type SegmentsProfileMetricCondition = {
    type: ProfileMetricEnum;
    metric_id: string;
    /**
     * Measurements for profile metrics.
     */
    measurement: 'count' | 'sum';
    measurement_filter: NumericOperatorNumericFilter;
    timeframe_filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | AlltimeDateFilter;
    metric_filters?: Array<ProfileMetricPropertyFilter> | null;
};
type ProfileMarketingConsentEnum = 'profile-marketing-consent';
type EmailEnum = 'email';
type AnyEnum = 'any';
type HasEmailMarketing = {
    subscription: AnyEnum;
    filters?: unknown;
};
type SubscribedEnum = 'subscribed';
type IsDoubleOptInEnum = 'is_double_opt_in';
type DoubleOptinFilter = {
    field: IsDoubleOptInEnum;
    filter: BooleanFilter;
};
type StatusDateEnum = 'status_date';
type CalendarDateFilter = {
    type: DateEnum;
    /**
     * Operators for calendar date filters.
     */
    operator: 'calendar-month';
    value: number;
};
type AnniversaryDateFilter = {
    type: DateEnum;
    /**
     * Operators for anniversary date filters.
     */
    operator: 'anniversary' | 'anniversary-month';
};
type StatusDateFilter = {
    field: StatusDateEnum;
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter;
};
type CustomSourceEnum = 'custom_source';
type EqualsEnum = 'equals';
type EqualsStringFilter = {
    type: StringEnum;
    operator: EqualsEnum;
    value: string | null;
};
type CustomSourceFilter = {
    field: CustomSourceEnum;
    filter: EqualsStringFilter;
};
type MethodEnum = 'method';
type FormEnum = 'form';
type InEnum = 'in';
type InStringArrayFilter = {
    type: StringEnum;
    operator: InEnum;
    value: Array<string>;
};
type FormMethodFilter = {
    field: MethodEnum;
    method: FormEnum;
    filter?: InStringArrayFilter;
};
type PreferencePageEnum = 'preference_page';
type PreferencePageFilter = {
    field: MethodEnum;
    method: PreferencePageEnum;
    filter?: EqualsStringFilter;
};
type ApiEnum = 'api';
type ApiMethodFilter = {
    field: MethodEnum;
    method: ApiEnum;
    filter?: InStringArrayFilter;
};
type InboundMessageEnum = 'inbound_message';
type InboundMessageMethodFilter = {
    field: MethodEnum;
    method: InboundMessageEnum;
};
type BackInStockEnum = 'back_in_stock';
type BackInStockMethodFilter = {
    field: MethodEnum;
    method: BackInStockEnum;
};
type SftpEnum = 'sftp';
type SftpMethodFilter = {
    field: MethodEnum;
    method: SftpEnum;
};
type ManualImportEnum = 'manual_import';
type ManualImportManualMethodFilter = {
    field: MethodEnum;
    method: ManualImportEnum;
    filter?: InStringArrayFilter;
};
type ManualAddEnum = 'manual_add';
type ManualAddManualMethodFilter = {
    field: MethodEnum;
    method: ManualAddEnum;
    filter?: InStringArrayFilter;
};
type IntegrationEnum = 'integration';
type ShopifyEnum = 'shopify';
type ShopifyIntegrationFilter = {
    type: StringEnum;
    operator: InEnum;
    value: Array<ShopifyEnum>;
};
type ShopifyIntegrationMethodFilter = {
    field: MethodEnum;
    method: IntegrationEnum;
    filter: ShopifyIntegrationFilter;
};
type HasEmailMarketingSubscribed = {
    subscription: SubscribedEnum;
    filters?: Array<DoubleOptinFilter | StatusDateFilter | CustomSourceFilter | FormMethodFilter | PreferencePageFilter | ApiMethodFilter | InboundMessageMethodFilter | BackInStockMethodFilter | SftpMethodFilter | ManualImportManualMethodFilter | ManualAddManualMethodFilter | ShopifyIntegrationMethodFilter> | null;
};
type NeverSubscribedEnum = 'never_subscribed';
type HasEmailMarketingNeverSubscribed = {
    subscription: NeverSubscribedEnum;
    filters?: unknown;
};
type HasEmailMarketingConsent = {
    channel: EmailEnum;
    can_receive_marketing: true;
    consent_status: HasEmailMarketing | HasEmailMarketingSubscribed | HasEmailMarketingNeverSubscribed;
};
type BounceDateEnum = 'bounce_date';
type IsSetEnum = 'is-set';
type IsSetExistenceFilter = {
    type: ExistenceEnum;
    operator: IsSetEnum;
};
type BounceDateFilter = {
    field: BounceDateEnum;
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | IsSetExistenceFilter;
};
type ManualSuppressionDateEnum = 'manual_suppression_date';
type ManualSuppressionDateFilter = {
    field: ManualSuppressionDateEnum;
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | IsSetExistenceFilter;
};
type InvalidEmailDateEnum = 'invalid_email_date';
type InvalidEmailDateFilter = {
    field: InvalidEmailDateEnum;
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | IsSetExistenceFilter;
};
type NoEmailMarketing = {
    subscription: AnyEnum;
    filters?: Array<BounceDateFilter | ManualSuppressionDateFilter | InvalidEmailDateFilter> | null;
};
type UnsubscribedEnum = 'unsubscribed';
type PreferencePageMethodFilter = {
    field: MethodEnum;
    method: PreferencePageEnum;
};
type ManualRemoveEnum = 'manual_remove';
type ManualRemoveMethodFilter = {
    field: MethodEnum;
    method: ManualRemoveEnum;
};
type SpamComplaintEnum = 'spam_complaint';
type SpamComplaintMethodFilter = {
    field: MethodEnum;
    method: SpamComplaintEnum;
};
type MailboxProviderEnum = 'mailbox_provider';
type MailboxProviderMethodFilter = {
    field: MethodEnum;
    method: MailboxProviderEnum;
};
type OneClickUnsubscribeEnum = 'one_click_unsubscribe';
type OneClickUnsubscribeMethodFilter = {
    field: MethodEnum;
    method: OneClickUnsubscribeEnum;
};
type ManualImportMethodFilter = {
    field: MethodEnum;
    method: ManualImportEnum;
};
type DataWarehouseImportEnum = 'data_warehouse_import';
type DataWarehouseImportMethodFilter = {
    field: MethodEnum;
    method: DataWarehouseImportEnum;
};
type ProfileModificationEnum = 'profile_modification';
type ProfileModificationMethodFilter = {
    field: MethodEnum;
    method: ProfileModificationEnum;
};
type ConstantContactEnum = 'constant_contact';
type ConstantContactIntegrationFilter = {
    type: StringEnum;
    operator: InEnum;
    value: Array<ConstantContactEnum>;
};
type ConstantContactIntegrationMethodFilter = {
    field: MethodEnum;
    method: IntegrationEnum;
    filter: ConstantContactIntegrationFilter;
};
type NoEmailMarketingUnsubscribed = {
    subscription: UnsubscribedEnum;
    filters?: Array<StatusDateFilter | ApiMethodFilter | InboundMessageMethodFilter | PreferencePageMethodFilter | ManualRemoveMethodFilter | SpamComplaintMethodFilter | MailboxProviderMethodFilter | OneClickUnsubscribeMethodFilter | ManualImportMethodFilter | SftpMethodFilter | DataWarehouseImportMethodFilter | ProfileModificationMethodFilter | ConstantContactIntegrationMethodFilter> | Array<BounceDateFilter | ManualSuppressionDateFilter | InvalidEmailDateFilter> | null;
};
type NoEmailMarketingNeverSubscribed = {
    subscription: NeverSubscribedEnum;
    filters: Array<BounceDateFilter | ManualSuppressionDateFilter | InvalidEmailDateFilter>;
};
type NoEmailMarketingSubscribed = {
    subscription: SubscribedEnum;
    filters: Array<BounceDateFilter | ManualSuppressionDateFilter | InvalidEmailDateFilter>;
};
type NoEmailMarketingConsent = {
    channel: EmailEnum;
    can_receive_marketing: false;
    consent_status: NoEmailMarketing | NoEmailMarketingUnsubscribed | NoEmailMarketingNeverSubscribed | NoEmailMarketingSubscribed;
};
type SmsEnum = 'sms';
type CheckoutEnum = 'checkout';
type CheckoutMethodFilter = {
    field: MethodEnum;
    method: CheckoutEnum;
};
type IsRcsCapableEnum = 'is_rcs_capable';
type SubscribedSmsisRcsCapableFilter = {
    field: IsRcsCapableEnum;
    filter: BooleanFilter;
};
type HasSmsMarketingSubscribed = {
    subscription: SubscribedEnum;
    filters?: Array<StatusDateFilter | FormMethodFilter | ManualImportManualMethodFilter | ManualAddManualMethodFilter | CheckoutMethodFilter | InboundMessageMethodFilter | PreferencePageMethodFilter | SftpMethodFilter | ShopifyIntegrationMethodFilter | SubscribedSmsisRcsCapableFilter> | null;
};
type HasSmsMarketingConsent = {
    channel: SmsEnum;
    can_receive_marketing: true;
    consent_status: HasSmsMarketingSubscribed;
};
type NoSmsMarketing = {
    subscription: AnyEnum;
};
type BulkRemoveEnum = 'bulk_remove';
type BulkRemoveMethodFilter = {
    field: MethodEnum;
    method: BulkRemoveEnum;
};
type CarrierDeactivationEnum = 'carrier_deactivation';
type CarrierDeactivationMethodFilter = {
    field: MethodEnum;
    method: CarrierDeactivationEnum;
};
type ProvidedLandlineEnum = 'provided_landline';
type ProvidedLandlineMethodFilter = {
    field: MethodEnum;
    method: ProvidedLandlineEnum;
};
type MessageBlockedEnum = 'message_blocked';
type MessageBlockedMethodFilter = {
    field: MethodEnum;
    method: MessageBlockedEnum;
};
type ProvidedNoAgeEnum = 'provided_no_age';
type ProvidedNoAgeMethodFilter = {
    field: MethodEnum;
    method: ProvidedNoAgeEnum;
};
type FailedAgeGateEnum = 'failed_age_gate';
type FailedAgeGateMethodFilter = {
    field: MethodEnum;
    method: FailedAgeGateEnum;
};
type NoSmsMarketingUnsubscribed = {
    subscription: UnsubscribedEnum;
    filters?: Array<StatusDateFilter | FormMethodFilter | ManualImportManualMethodFilter | ManualAddManualMethodFilter | ManualRemoveMethodFilter | BulkRemoveMethodFilter | CheckoutMethodFilter | InboundMessageMethodFilter | PreferencePageMethodFilter | SftpMethodFilter | CarrierDeactivationMethodFilter | ProvidedLandlineMethodFilter | MessageBlockedMethodFilter | ProvidedNoAgeMethodFilter | FailedAgeGateMethodFilter | ShopifyIntegrationMethodFilter> | null;
};
type NoSmsMarketingNeverSubscribed = {
    subscription: NeverSubscribedEnum;
};
type NoSmsMarketingConsent = {
    channel: SmsEnum;
    can_receive_marketing: false;
    consent_status: NoSmsMarketing | NoSmsMarketingUnsubscribed | NoSmsMarketingNeverSubscribed;
};
type PushEnum = 'push';
type HasPushMarketing = {
    subscription: AnyEnum;
    filters?: Array<StatusDateFilter> | null;
};
type HasPushMarketingConsent = {
    channel: PushEnum;
    can_receive_marketing: true;
    consent_status: HasPushMarketing;
};
type NoPushMarketing = {
    subscription: AnyEnum;
};
type NoPushMarketingConsent = {
    channel: PushEnum;
    can_receive_marketing: false;
    consent_status: NoPushMarketing;
};
type ProfileMarketingConsentCondition = {
    type: ProfileMarketingConsentEnum;
    consent: HasEmailMarketingConsent | NoEmailMarketingConsent | HasSmsMarketingConsent | NoSmsMarketingConsent | HasPushMarketingConsent | NoPushMarketingConsent;
};
type ProfilePostalCodeDistanceEnum = 'profile-postal-code-distance';
type GreaterThanEnum = 'greater-than';
type GreaterThanPositiveNumericFilter = {
    type: NumericEnum;
    operator: GreaterThanEnum;
    value: number | number;
};
type LessThanEnum = 'less-than';
type LessThanPositiveNumericFilter = {
    type: NumericEnum;
    operator: LessThanEnum;
    value: number | number;
};
type ProfilePostalCodeDistanceCondition = {
    type: ProfilePostalCodeDistanceEnum;
    country_code: string;
    postal_code: string;
    /**
     * Units for profile postal code distance conditions.
     */
    unit: 'kilometers' | 'miles';
    filter: GreaterThanPositiveNumericFilter | LessThanPositiveNumericFilter;
};
type ProfilePropertyEnum = 'profile-property';
type StringPhoneOperatorStringArrayFilter = {
    type: StringEnum;
    /**
     * Operators for phone string array filters.
     *
     * Example condition using this filter:
     * {
     */
    operator: 'phone-country-code-in' | 'phone-country-code-not-in';
    value: Array<string>;
};
type ListContainsOperatorListContainsFilter = {
    type: ListEnum;
    /**
     * Operators for list contains filters.
     */
    operator: 'contains' | 'not-contains';
    value: number | string | null;
};
type ProfilePropertyCondition = {
    type: ProfilePropertyEnum;
    property: string;
    filter: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | StringPhoneOperatorStringArrayFilter | NumericOperatorNumericFilter | BooleanFilter | StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | ListContainsOperatorListContainsFilter | ListLengthFilter | ExistenceOperatorExistenceFilter;
};
type ProfileRegionEnum = 'profile-region';
type ProfileRegionCondition = {
    type: ProfileRegionEnum;
    in_region: boolean;
    /**
     * Regions for profile region conditions.
     */
    region: 'european_union' | 'united_states';
};
type ProfilePredictiveAnalyticsEnum = 'profile-predictive-analytics';
type ProfilePredictiveAnalyticsDateCondition = {
    /**
     * Dimension for date profile predictive analytics conditions.
     */
    dimension: 'expected_date_of_next_purchase';
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter;
    type: ProfilePredictiveAnalyticsEnum;
};
type ProfilePredictiveAnalyticsNumericCondition = {
    type: ProfilePredictiveAnalyticsEnum;
    /**
     * Dimensions for numeric profile predictive analytics conditions.
     */
    dimension: 'average_days_between_orders' | 'average_order_value' | 'churn_probability' | 'historic_clv' | 'historic_number_of_orders' | 'predicted_clv' | 'predicted_number_of_orders' | 'total_clv';
    filter: NumericOperatorNumericFilter;
};
type NotEqualsEnum = 'not-equals';
type ProfilePredictiveAnalyticsStringFilter = {
    type: StringEnum;
    operator: EqualsEnum | NotEqualsEnum;
    /**
     * Values for profile predictive analytics gender conditions.
     */
    value: 'likely_female' | 'likely_male' | 'uncertain';
};
type ProfilePredictiveAnalyticsStringCondition = {
    type: ProfilePredictiveAnalyticsEnum;
    /**
     * Dimension for string profile predictive analytics conditions.
     */
    dimension: 'predicted_gender';
    filter: ProfilePredictiveAnalyticsStringFilter;
};
type PriorityEnum = 'priority';
type ProfilePredictiveAnalyticsChannelAffinityPriorityFilter = {
    type: NumericEnum;
    operator: EqualsEnum;
    value: number;
};
type ProfilePredictiveAnalyticsChannelAffinityPriorityCondition = {
    type: ProfilePredictiveAnalyticsEnum;
    /**
     * Possible dimension for channel affinity criterion.
     */
    dimension: 'channel_affinity';
    measurement: PriorityEnum;
    /**
     * Possible channels in a channel affinity definition.
     */
    predicted_channel: 'email' | 'push' | 'sms';
    filter: ProfilePredictiveAnalyticsChannelAffinityPriorityFilter;
};
type RankEnum = 'rank';
type ProfilePredictiveAnalyticsChannelAffinityRankFilter = {
    type: StringEnum;
    operator: EqualsEnum | NotEqualsEnum;
    /**
     * Possible rank values in a channel affinity definition.
     */
    value: 'high' | 'low' | 'medium';
};
type ProfilePredictiveAnalyticsChannelAffinityRankCondition = {
    type: ProfilePredictiveAnalyticsEnum;
    /**
     * Possible dimension for channel affinity criterion.
     */
    dimension: 'channel_affinity';
    measurement: RankEnum;
    /**
     * Possible channels in a channel affinity definition.
     */
    predicted_channel: 'email' | 'push' | 'sms';
    filter: ProfilePredictiveAnalyticsChannelAffinityRankFilter;
};
type ProfileHasCustomObjectEnum = 'profile-has-custom-object';
type IntegerFilter = {
    type: NumericEnum;
    /**
     * Operators for numeric filters.
     */
    operator: 'equals' | 'greater-than' | 'greater-than-or-equal' | 'less-than' | 'less-than-or-equal' | 'not-equals';
    value: number;
};
type NumericRangeFilter = {
    type: NumericEnum;
    /**
     * Operators for numeric range filters.
     */
    operator: 'between';
    start: number | number;
    end: number | number;
};
type ProfileHasCustomObjectFilter = {
    property_id: number;
    filter: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | NumericOperatorNumericFilter | NumericRangeFilter | BooleanFilter | StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | ExistenceOperatorExistenceFilter;
};
type ProfileHasCustomObjectCondition = {
    type: ProfileHasCustomObjectEnum;
    object_type_id: string;
    object_type_relationship_id: string;
    filter: IntegerFilter;
    filters: Array<ProfileHasCustomObjectFilter>;
};
type ProfilePermissionsEnum = 'profile-permissions';
type ExplicitlyReachableEnum = 'explicitly_reachable';
type EffectiveDateEnum = 'effective_date';
type EffectiveDateFilter = {
    field: EffectiveDateEnum;
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter;
};
type RecordedDateEnum = 'recorded_date';
type RecordedDateFilter = {
    field: RecordedDateEnum;
    filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter;
};
type SubscribeMethodEnum = 'subscribe_method';
type MethodFilter = {
    field: SubscribeMethodEnum;
    /**
     * Method for subscribing / unsubscribing.
     */
    method: 'api' | 'back_in_stock' | 'bigcommerce' | 'bulk_remove' | 'campaign_monitor' | 'carrier_deactivation' | 'checkout' | 'constant_contact' | 'exact_target' | 'facebook' | 'failed_age_gate' | 'inbound_message' | 'integration' | 'mad_mimi' | 'magento_two' | 'mailbox_provider' | 'manual_add' | 'manual_import' | 'manual_remove' | 'message_blocked' | 'netsuite' | 'preference_page' | 'provided_landline' | 'provided_no_age' | 'sftp' | 'shopify' | 'social_instagram_message' | 'spam_complaint' | 'square' | 'wix' | 'woocommerce';
};
type FormSubscribeFilter = {
    field: SubscribeMethodEnum;
    method: FormEnum;
    filter?: InStringArrayFilter;
};
type ExplicitlyReachable = {
    reachable_status: ExplicitlyReachableEnum;
    filters: Array<EffectiveDateFilter | RecordedDateFilter | MethodFilter | FormSubscribeFilter>;
};
type ImplicitlyReachableEnum = 'implicitly_reachable';
type ImplicitlyReachable = {
    reachable_status: ImplicitlyReachableEnum;
};
type ImplicitlyOrExplicitlyReachableEnum = 'implicitly_or_explicitly_reachable';
type ImplicitlyOrExplicitlyReachable = {
    reachable_status: ImplicitlyOrExplicitlyReachableEnum;
};
type ExplicitlyUnreachableEnum = 'explicitly_unreachable';
type ExplicitlyUnreachable = {
    reachable_status: ExplicitlyUnreachableEnum;
    filters: Array<EffectiveDateFilter | RecordedDateFilter | MethodFilter | FormSubscribeFilter>;
};
type ImplicitlyUnreachableEnum = 'implicitly_unreachable';
type ImplicitlyUnreachable = {
    reachable_status: ImplicitlyUnreachableEnum;
};
type ImplicitlyOrExplicitlyUnreachableEnum = 'implicitly_or_explicitly_unreachable';
type ImplicitlyOrExplicitlyUnreachable = {
    reachable_status: ImplicitlyOrExplicitlyUnreachableEnum;
};
type ProfilePermissionsCondition = {
    type: ProfilePermissionsEnum;
    permission: ExplicitlyReachable | ImplicitlyReachable | ImplicitlyOrExplicitlyReachable | ExplicitlyUnreachable | ImplicitlyUnreachable | ImplicitlyOrExplicitlyUnreachable;
    /**
     * Possible channels for profile permissions criterion.
     */
    channel: 'whatsapp_marketing' | 'whatsapp_transactional';
};
type ProfileMetricFunnelEnum = 'profile-metric-funnel';
type ProfileMetricFunnelSteps = {
    metric_exists: boolean;
    metric_id: string;
    metric_filters?: Array<ProfileMetricPropertyFilter> | null;
};
type SegmentsProfileMetricFunnelCondition = {
    type: ProfileMetricFunnelEnum;
    timeframe_filter: StaticDateRangeFilter | RelativeDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter;
    /**
     * Allowed completion window durations for funnel conditions (in
     * seconds).
     */
    completion_window_seconds?: 'DAYS_1' | 'DAYS_180' | 'DAYS_3' | 'DAYS_30' | 'DAYS_5' | 'DAYS_90' | 'HOURS_1' | 'WEEKS_1' | 'YEARS_1';
    steps: Array<ProfileMetricFunnelSteps>;
};
type ConditionGroup = {
    conditions: Array<ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | SegmentsProfileMetricCondition | ProfileMarketingConsentCondition | ProfilePostalCodeDistanceCondition | ProfilePropertyCondition | ProfileRegionCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsNumericCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsChannelAffinityPriorityCondition | ProfilePredictiveAnalyticsChannelAffinityRankCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition | SegmentsProfileMetricFunnelCondition>;
};
type SegmentDefinition = {
    condition_groups: Array<ConditionGroup>;
};
type SegmentListResponseObjectResource = {
    type: SegmentEnum;
    id: string;
    attributes: {
        /**
         * A helpful name to label the segment
         */
        name?: string | null;
        definition?: SegmentDefinition;
        /**
         * Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * Whether the segment is active. Inactive segments are not processed and their membership does not update.
         */
        is_active: boolean;
        is_processing: boolean;
        is_starred: boolean;
    };
    links: ObjectLinks;
};
type GetSegmentListResponseCollectionCompoundDocument = {
    data: Array<SegmentListResponseObjectResource & {
        relationships?: {
            profiles?: {
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<TagResponseObjectResource | FlowResponseObjectResource>;
};
type SegmentRetrieveResponseObjectResource = {
    type: SegmentEnum;
    id: string;
    attributes: {
        /**
         * A helpful name to label the segment
         */
        name?: string | null;
        definition?: SegmentDefinition;
        /**
         * Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * Whether the segment is active. Inactive segments are not processed and their membership does not update.
         */
        is_active: boolean;
        is_processing: boolean;
        is_starred: boolean;
    };
    links: ObjectLinks;
};
type GetSegmentRetrieveResponseCompoundDocument = {
    data: SegmentRetrieveResponseObjectResource & {
        relationships?: {
            profiles?: {
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: SegmentEnum;
        attributes?: {
            profile_count?: number | null;
        };
    };
    included?: Array<TagResponseObjectResource | FlowResponseObjectResource>;
    links?: ObjectLinks;
};
type GetSegmentTagsRelationshipsResponseCollection = {
    data: Array<{
        type: TagEnum;
        /**
         * The Tag ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type SegmentMemberResponseObjectResource = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        /**
         * Date and time when the profile was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the profile was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * Date and time of the most recent event the triggered an update to the profile, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        last_event_date?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
        /**
         * The datetime when this profile most recently joined the segment.
         */
        joined_group_at: string;
    };
    links: ObjectLinks;
};
type GetSegmentMemberResponseCollection = {
    data: Array<SegmentMemberResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ProfileEnum;
        attributes?: {
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
    }>;
    links?: CollectionLinks;
};
type GetSegmentProfilesRelationshipsResponseCollection = {
    data: Array<{
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetSegmentFlowTriggersRelationshipsResponseCollection = {
    data: Array<{
        type: FlowEnum;
        id: string;
    }>;
    links?: CollectionLinks;
};
type DeviceMetadata = {
    /**
     * Relatively stable ID for the device. Will update on app uninstall and reinstall
     */
    device_id?: string | null;
    /**
     * The name of the SDK used to create the push token.
     */
    klaviyo_sdk?: 'android' | 'flutter' | 'flutter_community' | 'react_native' | 'swift';
    /**
     * The version of the SDK used to create the push token
     */
    sdk_version?: string | null;
    /**
     * The model of the device
     */
    device_model?: string | null;
    /**
     * The name of the operating system on the device.
     */
    os_name?: 'android' | 'ios' | 'ipados' | 'macos' | 'tvos';
    /**
     * The version of the operating system on the device
     */
    os_version?: string | null;
    /**
     * The manufacturer of the device
     */
    manufacturer?: string | null;
    /**
     * The name of the app that created the push token
     */
    app_name?: string | null;
    /**
     * The version of the app that created the push token
     */
    app_version?: string | null;
    /**
     * The build of the app that created the push token
     */
    app_build?: string | null;
    /**
     * The ID of the app that created the push token
     */
    app_id?: string | null;
    /**
     * The environment in which the push token was created
     */
    environment?: 'debug' | 'release';
};
type PushTokenResponseObjectResource = {
    type: PushTokenEnum;
    /**
     * ID of push token
     */
    id: string;
    attributes: {
        /**
         * The time at which the token was created
         */
        created: string;
        /**
         * The push token
         */
        token: string;
        /**
         * The enablement status of the push token
         */
        enablement_status: 'AUTHORIZED' | 'DENIED' | 'NOT_DETERMINED' | 'PROVISIONAL' | 'UNAUTHORIZED';
        /**
         * The platform of the push token('ios', 'android')
         */
        platform: 'android' | 'ios';
        /**
         * The vendor of the push token('APNs', 'FCM')
         */
        vendor: string;
        /**
         * The background state of the push token
         */
        background: string;
        /**
         * The date the push token was recorded
         */
        recorded_date: string;
        metadata?: DeviceMetadata;
    };
    links: ObjectLinks;
};
type GetProfileResponseCollectionCompoundDocument = {
    data: Array<ProfileResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                data?: Array<{
                    type: PushTokenEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ProfileEnum;
        attributes?: {
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
    }>;
    links?: CollectionLinks;
    included?: Array<PushTokenResponseObjectResource>;
};
type ListResponseObjectResource = {
    type: ListEnum;
    /**
     * Primary key that uniquely identifies this list. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * A helpful name to label the list
         */
        name?: string | null;
        /**
         * Date and time when the list was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the list was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'.
         */
        opt_in_process?: 'double_opt_in' | 'single_opt_in';
    };
    links: ObjectLinks;
};
type SegmentResponseObjectResource = {
    type: SegmentEnum;
    id: string;
    attributes: {
        /**
         * A helpful name to label the segment
         */
        name?: string | null;
        definition?: SegmentDefinition;
        /**
         * Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
        /**
         * Whether the segment is active. Inactive segments are not processed and their membership does not update.
         */
        is_active: boolean;
        is_processing: boolean;
        is_starred: boolean;
    };
    links: ObjectLinks;
};
type GetProfileResponseCompoundDocument = {
    data: ProfileResponseObjectResource & {
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            segments?: {
                data?: Array<{
                    type: SegmentEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                data?: Array<{
                    type: PushTokenEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ProfileEnum;
        attributes?: {
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
    };
    included?: Array<ListResponseObjectResource | SegmentResponseObjectResource | PushTokenResponseObjectResource>;
    links?: ObjectLinks;
};
type GetPushTokenResponseCollection = {
    data: Array<PushTokenResponseObjectResource & {
        relationships?: {
            profile?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetProfilePushTokensRelationshipsResponseCollection = {
    data: Array<{
        type: PushTokenEnum;
        /**
         * ID of push token
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetListResponseCollection = {
    data: Array<ListResponseObjectResource & {
        relationships?: {
            profiles?: {
                links?: RelationshipLinks;
            };
            tags?: {
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetProfileListsRelationshipsResponseCollection = {
    data: Array<{
        type: ListEnum;
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetSegmentResponseCollection = {
    data: Array<SegmentResponseObjectResource & {
        relationships?: {
            profiles?: {
                links?: RelationshipLinks;
            };
            tags?: {
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetProfileSegmentsRelationshipsResponseCollection = {
    data: Array<{
        type: SegmentEnum;
        id: string;
    }>;
    links?: CollectionLinks;
};
type ProfileBulkImportJobEnum = 'profile-bulk-import-job';
type ProfileImportJobResponseObjectResource = {
    type: ProfileBulkImportJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
        /**
         * Date and time the job started processing in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        started_at?: string | null;
    };
    links: ObjectLinks;
};
type GetProfileImportJobResponseCollectionCompoundDocument = {
    data: Array<ProfileImportJobResponseObjectResource & {
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    /**
                     * List to add the profiles to
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            profiles?: {
                links?: RelationshipLinks;
            };
            'import-errors'?: {
                links?: OnlyRelatedLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetProfileImportJobResponseCompoundDocument = {
    data: ProfileImportJobResponseObjectResource & {
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    /**
                     * List to add the profiles to
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            profiles?: {
                links?: RelationshipLinks;
            };
            'import-errors'?: {
                links?: OnlyRelatedLinks;
            };
        };
    };
    included?: Array<ListResponseObjectResource>;
    links?: ObjectLinks;
};
type GetProfileBulkImportJobListsRelationshipsResponseCollection = {
    data: Array<{
        type: ListEnum;
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetProfileResponseCollection = {
    data: Array<ProfileResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: ProfileEnum;
        attributes?: {
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
    }>;
    links?: CollectionLinks;
};
type GetProfileBulkImportJobProfilesRelationshipsResponseCollection = {
    data: Array<{
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type ImportErrorEnum = 'import-error';
type ImportErrorResponseObjectResource = {
    type: ImportErrorEnum;
    /**
     * Unique identifier for the error.
     */
    id: string;
    attributes: {
        /**
         * A code for classifying the error type.
         */
        code: string;
        /**
         * A high-level message about the error.
         */
        title: string;
        /**
         * Specific details about the error.
         */
        detail: string;
        source: ErrorSource;
        original_payload?: {
            [key: string]: unknown;
        } | null;
    };
};
type GetImportErrorResponseCollection = {
    data: Array<ImportErrorResponseObjectResource>;
    links?: CollectionLinks;
};
type ActionOutputSplitEnum = 'action-output-split';
type BooleanBranchLinks = {
    next_if_true: string | null;
    next_if_false: string | null;
};
type ActionOutputEnum = 'action-output';
type ActionOutputCondition = {
    type: ActionOutputEnum;
    output_config_id: number;
    field: string;
    filter: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | NumericOperatorNumericFilter | NumericRangeFilter | BooleanFilter | ExistenceOperatorExistenceFilter;
};
type ActionOutputConditionConditionGroup = {
    conditions: Array<ActionOutputCondition>;
};
type ActionOutputConditionFilter = {
    condition_groups: Array<ActionOutputConditionConditionGroup>;
};
type ActionOutputSplitActionData = {
    action_output_filter: ActionOutputConditionFilter;
};
type ActionOutputSplitAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: ActionOutputSplitEnum;
    links?: BooleanBranchLinks;
    data?: ActionOutputSplitActionData;
};
type BackInStockDelayEnum = 'back-in-stock-delay';
type Link = {
    next: string | null;
};
type BackInStockDelayAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: BackInStockDelayEnum;
    links?: Link;
};
type ConditionalSplitEnum = 'conditional-split';
type SinceFlowStartDateFilter = {
    type: DateEnum;
    /**
     * Possible operators for since flow start date.
     */
    operator: 'flow-start';
};
type FlowsProfileMetricCondition = {
    type: ProfileMetricEnum;
    metric_id: string;
    /**
     * Measurements for profile metrics.
     */
    measurement: 'count' | 'sum';
    measurement_filter: NumericOperatorNumericFilter;
    timeframe_filter: StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | AlltimeDateFilter | SinceFlowStartDateFilter;
    metric_filters?: Array<ProfileMetricPropertyFilter> | null;
};
type ProfileSampleEnum = 'profile-sample';
type ProfileRandomSampleCondition = {
    type: ProfileSampleEnum;
    percentage: number;
};
type ConditionalBranchActionData = {
    profile_filter: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition>;
        }>;
    } | null;
};
type ConditionalBranchAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: ConditionalSplitEnum;
    links?: BooleanBranchLinks;
    data?: ConditionalBranchActionData;
};
type ContentExperimentEnum = 'content-experiment';
type SendMobilePushEnum = 'send-mobile-push';
type IncrementOneEnum = 'increment_one';
type Increment = {
    badge_config: IncrementOneEnum;
};
type SetCountEnum = 'set_count';
type StaticCount = {
    badge_config: SetCountEnum;
    value: string;
};
type SetPropertyEnum = 'set_property';
type Property = {
    badge_config: SetPropertyEnum;
    set_from_property: string;
};
type ProfileNotSentPushEnum = 'profile-not-sent-push';
type InTheLastEnum = 'in-the-last';
type InTheLastBaseRelativeDateFilter = {
    type: DateEnum;
    operator: InTheLastEnum;
    /**
     * Units for relative date filters.
     */
    unit: 'day' | 'hour' | 'week';
    quantity: number;
};
type ProfileHasNotReceivedPushMessageCondition = {
    type: ProfileNotSentPushEnum;
    timeframe_filter: AlltimeDateFilter | InTheLastBaseRelativeDateFilter;
};
type FlowPushNotification = {
    title?: string | null;
    body: string;
    sound?: boolean;
    badge?: boolean;
    badge_options?: Increment | StaticCount | Property;
    /**
     * The id of an ImageAsset. If provided, this will take precedence over a dynamic_image.
     */
    image_id?: string | null;
    /**
     * A dynamic image asset to include in the push notification.
     */
    dynamic_image?: string | null;
    /**
     * The ULID of a video asset. If provided, videos and images are mutually exclusive.
     */
    video_asset_id?: string | null;
    /**
     * See PushLinkAction in app.
     *
     * This is not a flow action, but the literal action that should be
     * taken when the push notification is tapped.
     */
    on_open?: 'home' | 'link';
    ios_link?: string | null;
    android_link?: string | null;
    /**
     * The type of push notification to send.
     */
    push_type?: 'silent' | 'standard';
    kv_pairs?: {
        [key: string]: unknown;
    } | null;
    conversion_metric_id?: string | null;
    smart_sending_enabled?: boolean;
    additional_filters?: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition | ProfileHasNotReceivedPushMessageCondition>;
        }>;
    } | null;
    name?: string | null;
    id?: string | null;
};
type SendPushNotificationActionData = {
    message?: FlowPushNotification;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type SendPushNotificationAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: SendMobilePushEnum;
    links?: Link;
    data?: SendPushNotificationActionData;
};
type SendPushNotificationActionCurrentExperiment = {
    id?: string | null;
    name?: string | null;
    variations: Array<SendPushNotificationAction>;
    allocations?: {
        [key: string]: unknown;
    } | null;
    started?: string | null;
    /**
     * The metric to use to determine the winner of the content experiment
     * action.
     */
    winner_metric?: 'open-rate';
};
type SendPushNotificationActionContentExperimentActionData = {
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
    /**
     * The status of the content experiment action experiment.
     */
    experiment_status?: 'completed' | 'draft' | 'live';
    main_action: SendPushNotificationAction;
    current_experiment?: SendPushNotificationActionCurrentExperiment;
};
type ContentExperimentAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: ContentExperimentEnum;
    links?: Link;
    data: SendPushNotificationActionContentExperimentActionData;
};
type SendEmailEnum = 'send-email';
type UtmParam = {
    param: string;
    value: string;
};
type ProfileNotSentEmailEnum = 'profile-not-sent-email';
type ProfileHasNotReceivedEmailMessageCondition = {
    type: ProfileNotSentEmailEnum;
    timeframe_filter: AlltimeDateFilter | InTheLastBaseRelativeDateFilter;
};
type FlowEmail = {
    from_email: string | null;
    from_label: string | null;
    reply_to_email: string | null;
    cc_email: string | null;
    bcc_email: string | null;
    subject_line: string | null;
    preview_text: string | null;
    template_id?: string | null;
    smart_sending_enabled?: boolean;
    transactional?: boolean;
    add_tracking_params?: boolean;
    custom_tracking_params?: Array<UtmParam> | null;
    additional_filters?: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition | ProfileHasNotReceivedEmailMessageCondition>;
        }>;
    } | null;
    name?: string | null;
    id?: string | null;
};
type SendEmailActionData = {
    message?: FlowEmail;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type SendEmailAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: SendEmailEnum;
    links?: Link;
    data?: SendEmailActionData;
};
type SendSmsEnum = 'send-sms';
type ProfileNotSentSmsEnum = 'profile-not-sent-sms';
type ProfileHasNotReceivedSmsMessageCondition = {
    type: ProfileNotSentSmsEnum;
    timeframe_filter: AlltimeDateFilter | InTheLastBaseRelativeDateFilter;
};
type FlowSms = {
    body: string;
    /**
     * The id of an ImageAsset. If provided, this will take precedence over a dynamic_image.
     */
    image_id?: string | null;
    /**
     * A dynamic image asset to include in the SMS message.
     */
    dynamic_image?: string | null;
    shorten_links?: boolean;
    include_contact_card?: boolean;
    add_org_prefix?: boolean;
    add_info_link?: boolean;
    add_opt_out_language?: boolean;
    smart_sending_enabled?: boolean;
    sms_quiet_hours_enabled?: boolean;
    transactional?: boolean;
    add_tracking_params?: boolean;
    custom_tracking_params?: Array<UtmParam> | null;
    template_id?: string | null;
    additional_filters?: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition | ProfileHasNotReceivedSmsMessageCondition>;
        }>;
    } | null;
    name?: string | null;
    id?: string | null;
};
type SendSmsActionData = {
    message?: FlowSms;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type SendSmsAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: SendSmsEnum;
    links?: Link;
    data?: SendSmsActionData;
};
type SendWebhookEnum = 'send-webhook';
type FlowWebhook = {
    url: string | null;
    headers?: {
        [key: string]: unknown;
    };
    body?: string | null;
    name?: string | null;
    id?: string | null;
};
type SendWebhookActionData = {
    message: FlowWebhook;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type SendWebhookAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: SendWebhookEnum;
    links?: Link;
    data?: SendWebhookActionData;
};
type SendInternalAlertEnum = 'send-internal-alert';
type FlowInternalAlert = {
    from_email: string | null;
    from_label: string | null;
    to_emails: Array<string>;
    subject_line: string | null;
    template_id?: string | null;
    name?: string | null;
    id?: string | null;
};
type SendInternalAlertActionData = {
    message: FlowInternalAlert;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type SendInternalAlertAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: SendInternalAlertEnum;
    links?: Link;
    data?: SendInternalAlertActionData;
};
type SendWhatsappEnum = 'send-whatsapp';
type FlowWhatsApp = {
    id?: string | null;
    name?: string | null;
    vendor_id?: string | null;
    smart_sending_enabled?: boolean;
    transactional?: boolean;
    add_tracking_params?: boolean;
    additional_filters?: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition>;
        }>;
    } | null;
};
type SendWhatsAppActionData = {
    message?: FlowWhatsApp;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type SendWhatsAppAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: SendWhatsappEnum;
    links?: Link;
    data?: SendWhatsAppActionData;
};
type TimeDelayEnum = 'time-delay';
type TimeDelayActionData = {
    /**
     * aka delay_units in app.
     */
    unit?: 'days' | 'hours' | 'minutes';
    value: number;
    secondary_value?: number | null;
    timezone?: 'Africa/Abidjan' | 'Africa/Accra' | 'Africa/Addis_Ababa' | 'Africa/Algiers' | 'Africa/Asmara' | 'Africa/Bamako' | 'Africa/Bangui' | 'Africa/Banjul' | 'Africa/Bissau' | 'Africa/Blantyre' | 'Africa/Brazzaville' | 'Africa/Bujumbura' | 'Africa/Cairo' | 'Africa/Casablanca' | 'Africa/Ceuta' | 'Africa/Conakry' | 'Africa/Dakar' | 'Africa/Dar_es_Salaam' | 'Africa/Djibouti' | 'Africa/Douala' | 'Africa/El_Aaiun' | 'Africa/Freetown' | 'Africa/Gaborone' | 'Africa/Harare' | 'Africa/Johannesburg' | 'Africa/Juba' | 'Africa/Kampala' | 'Africa/Khartoum' | 'Africa/Kigali' | 'Africa/Kinshasa' | 'Africa/Lagos' | 'Africa/Libreville' | 'Africa/Lome' | 'Africa/Luanda' | 'Africa/Lubumbashi' | 'Africa/Lusaka' | 'Africa/Malabo' | 'Africa/Maputo' | 'Africa/Maseru' | 'Africa/Mbabane' | 'Africa/Mogadishu' | 'Africa/Monrovia' | 'Africa/Nairobi' | 'Africa/Ndjamena' | 'Africa/Niamey' | 'Africa/Nouakchott' | 'Africa/Ouagadougou' | 'Africa/Porto-Novo' | 'Africa/Sao_Tome' | 'Africa/Tripoli' | 'Africa/Tunis' | 'Africa/Windhoek' | 'America/Adak' | 'America/Anchorage' | 'America/Anguilla' | 'America/Antigua' | 'America/Araguaina' | 'America/Argentina/Buenos_Aires' | 'America/Argentina/Catamarca' | 'America/Argentina/Cordoba' | 'America/Argentina/Jujuy' | 'America/Argentina/La_Rioja' | 'America/Argentina/Mendoza' | 'America/Argentina/Rio_Gallegos' | 'America/Argentina/Salta' | 'America/Argentina/San_Juan' | 'America/Argentina/San_Luis' | 'America/Argentina/Tucuman' | 'America/Argentina/Ushuaia' | 'America/Aruba' | 'America/Asuncion' | 'America/Atikokan' | 'America/Bahia' | 'America/Bahia_Banderas' | 'America/Barbados' | 'America/Belem' | 'America/Belize' | 'America/Blanc-Sablon' | 'America/Boa_Vista' | 'America/Bogota' | 'America/Boise' | 'America/Cambridge_Bay' | 'America/Campo_Grande' | 'America/Cancun' | 'America/Caracas' | 'America/Cayenne' | 'America/Cayman' | 'America/Chicago' | 'America/Chihuahua' | 'America/Ciudad_Juarez' | 'America/Costa_Rica' | 'America/Creston' | 'America/Cuiaba' | 'America/Curacao' | 'America/Danmarkshavn' | 'America/Dawson' | 'America/Dawson_Creek' | 'America/Denver' | 'America/Detroit' | 'America/Dominica' | 'America/Edmonton' | 'America/Eirunepe' | 'America/El_Salvador' | 'America/Fort_Nelson' | 'America/Fortaleza' | 'America/Glace_Bay' | 'America/Goose_Bay' | 'America/Grand_Turk' | 'America/Grenada' | 'America/Guadeloupe' | 'America/Guatemala' | 'America/Guayaquil' | 'America/Guyana' | 'America/Halifax' | 'America/Havana' | 'America/Hermosillo' | 'America/Indiana/Indianapolis' | 'America/Indiana/Knox' | 'America/Indiana/Marengo' | 'America/Indiana/Petersburg' | 'America/Indiana/Tell_City' | 'America/Indiana/Vevay' | 'America/Indiana/Vincennes' | 'America/Indiana/Winamac' | 'America/Inuvik' | 'America/Iqaluit' | 'America/Jamaica' | 'America/Juneau' | 'America/Kentucky/Louisville' | 'America/Kentucky/Monticello' | 'America/Kralendijk' | 'America/La_Paz' | 'America/Lima' | 'America/Los_Angeles' | 'America/Lower_Princes' | 'America/Maceio' | 'America/Managua' | 'America/Manaus' | 'America/Marigot' | 'America/Martinique' | 'America/Matamoros' | 'America/Mazatlan' | 'America/Menominee' | 'America/Merida' | 'America/Metlakatla' | 'America/Mexico_City' | 'America/Miquelon' | 'America/Moncton' | 'America/Monterrey' | 'America/Montevideo' | 'America/Montserrat' | 'America/Nassau' | 'America/New_York' | 'America/Nome' | 'America/Noronha' | 'America/North_Dakota/Beulah' | 'America/North_Dakota/Center' | 'America/North_Dakota/New_Salem' | 'America/Nuuk' | 'America/Ojinaga' | 'America/Panama' | 'America/Paramaribo' | 'America/Phoenix' | 'America/Port-au-Prince' | 'America/Port_of_Spain' | 'America/Porto_Velho' | 'America/Puerto_Rico' | 'America/Punta_Arenas' | 'America/Rankin_Inlet' | 'America/Recife' | 'America/Regina' | 'America/Resolute' | 'America/Rio_Branco' | 'America/Santarem' | 'America/Santiago' | 'America/Santo_Domingo' | 'America/Sao_Paulo' | 'America/Scoresbysund' | 'America/Sitka' | 'America/St_Barthelemy' | 'America/St_Johns' | 'America/St_Kitts' | 'America/St_Lucia' | 'America/St_Thomas' | 'America/St_Vincent' | 'America/Swift_Current' | 'America/Tegucigalpa' | 'America/Thule' | 'America/Tijuana' | 'America/Toronto' | 'America/Tortola' | 'America/Vancouver' | 'America/Whitehorse' | 'America/Winnipeg' | 'America/Yakutat' | 'Antarctica/Casey' | 'Antarctica/Davis' | 'Antarctica/DumontDUrville' | 'Antarctica/Macquarie' | 'Antarctica/Mawson' | 'Antarctica/McMurdo' | 'Antarctica/Palmer' | 'Antarctica/Rothera' | 'Antarctica/Syowa' | 'Antarctica/Troll' | 'Antarctica/Vostok' | 'Arctic/Longyearbyen' | 'Asia/Aden' | 'Asia/Almaty' | 'Asia/Amman' | 'Asia/Anadyr' | 'Asia/Aqtau' | 'Asia/Aqtobe' | 'Asia/Ashgabat' | 'Asia/Atyrau' | 'Asia/Baghdad' | 'Asia/Bahrain' | 'Asia/Baku' | 'Asia/Bangkok' | 'Asia/Barnaul' | 'Asia/Beirut' | 'Asia/Bishkek' | 'Asia/Brunei' | 'Asia/Chita' | 'Asia/Choibalsan' | 'Asia/Colombo' | 'Asia/Damascus' | 'Asia/Dhaka' | 'Asia/Dili' | 'Asia/Dubai' | 'Asia/Dushanbe' | 'Asia/Famagusta' | 'Asia/Gaza' | 'Asia/Hebron' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Hovd' | 'Asia/Irkutsk' | 'Asia/Jakarta' | 'Asia/Jayapura' | 'Asia/Jerusalem' | 'Asia/Kabul' | 'Asia/Kamchatka' | 'Asia/Karachi' | 'Asia/Kathmandu' | 'Asia/Khandyga' | 'Asia/Kolkata' | 'Asia/Krasnoyarsk' | 'Asia/Kuala_Lumpur' | 'Asia/Kuching' | 'Asia/Kuwait' | 'Asia/Macau' | 'Asia/Magadan' | 'Asia/Makassar' | 'Asia/Manila' | 'Asia/Muscat' | 'Asia/Nicosia' | 'Asia/Novokuznetsk' | 'Asia/Novosibirsk' | 'Asia/Omsk' | 'Asia/Oral' | 'Asia/Phnom_Penh' | 'Asia/Pontianak' | 'Asia/Pyongyang' | 'Asia/Qatar' | 'Asia/Qostanay' | 'Asia/Qyzylorda' | 'Asia/Riyadh' | 'Asia/Sakhalin' | 'Asia/Samarkand' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Srednekolymsk' | 'Asia/Taipei' | 'Asia/Tashkent' | 'Asia/Tbilisi' | 'Asia/Tehran' | 'Asia/Thimphu' | 'Asia/Tokyo' | 'Asia/Tomsk' | 'Asia/Ulaanbaatar' | 'Asia/Urumqi' | 'Asia/Ust-Nera' | 'Asia/Vientiane' | 'Asia/Vladivostok' | 'Asia/Yakutsk' | 'Asia/Yangon' | 'Asia/Yekaterinburg' | 'Asia/Yerevan' | 'Atlantic/Azores' | 'Atlantic/Bermuda' | 'Atlantic/Canary' | 'Atlantic/Cape_Verde' | 'Atlantic/Faroe' | 'Atlantic/Madeira' | 'Atlantic/Reykjavik' | 'Atlantic/South_Georgia' | 'Atlantic/St_Helena' | 'Atlantic/Stanley' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Broken_Hill' | 'Australia/Darwin' | 'Australia/Eucla' | 'Australia/Hobart' | 'Australia/Lindeman' | 'Australia/Lord_Howe' | 'Australia/Melbourne' | 'Australia/Perth' | 'Australia/Sydney' | 'Canada/Atlantic' | 'Canada/Central' | 'Canada/Eastern' | 'Canada/Mountain' | 'Canada/Newfoundland' | 'Canada/Pacific' | 'Europe/Amsterdam' | 'Europe/Andorra' | 'Europe/Astrakhan' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Bratislava' | 'Europe/Brussels' | 'Europe/Bucharest' | 'Europe/Budapest' | 'Europe/Busingen' | 'Europe/Chisinau' | 'Europe/Copenhagen' | 'Europe/Dublin' | 'Europe/Gibraltar' | 'Europe/Guernsey' | 'Europe/Helsinki' | 'Europe/Isle_of_Man' | 'Europe/Istanbul' | 'Europe/Jersey' | 'Europe/Kaliningrad' | 'Europe/Kirov' | 'Europe/Kyiv' | 'Europe/Lisbon' | 'Europe/Ljubljana' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Malta' | 'Europe/Mariehamn' | 'Europe/Minsk' | 'Europe/Monaco' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Podgorica' | 'Europe/Prague' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Samara' | 'Europe/San_Marino' | 'Europe/Sarajevo' | 'Europe/Saratov' | 'Europe/Simferopol' | 'Europe/Skopje' | 'Europe/Sofia' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Tirane' | 'Europe/Ulyanovsk' | 'Europe/Vaduz' | 'Europe/Vatican' | 'Europe/Vienna' | 'Europe/Vilnius' | 'Europe/Volgograd' | 'Europe/Warsaw' | 'Europe/Zagreb' | 'Europe/Zurich' | 'GMT' | 'Indian/Antananarivo' | 'Indian/Chagos' | 'Indian/Christmas' | 'Indian/Cocos' | 'Indian/Comoro' | 'Indian/Kerguelen' | 'Indian/Mahe' | 'Indian/Maldives' | 'Indian/Mauritius' | 'Indian/Mayotte' | 'Indian/Reunion' | 'Pacific/Apia' | 'Pacific/Auckland' | 'Pacific/Bougainville' | 'Pacific/Chatham' | 'Pacific/Chuuk' | 'Pacific/Easter' | 'Pacific/Efate' | 'Pacific/Fakaofo' | 'Pacific/Fiji' | 'Pacific/Funafuti' | 'Pacific/Galapagos' | 'Pacific/Gambier' | 'Pacific/Guadalcanal' | 'Pacific/Guam' | 'Pacific/Honolulu' | 'Pacific/Kanton' | 'Pacific/Kiritimati' | 'Pacific/Kosrae' | 'Pacific/Kwajalein' | 'Pacific/Majuro' | 'Pacific/Marquesas' | 'Pacific/Midway' | 'Pacific/Nauru' | 'Pacific/Niue' | 'Pacific/Norfolk' | 'Pacific/Noumea' | 'Pacific/Pago_Pago' | 'Pacific/Palau' | 'Pacific/Pitcairn' | 'Pacific/Pohnpei' | 'Pacific/Port_Moresby' | 'Pacific/Rarotonga' | 'Pacific/Saipan' | 'Pacific/Tahiti' | 'Pacific/Tarawa' | 'Pacific/Tongatapu' | 'Pacific/Wake' | 'Pacific/Wallis' | 'US/Alaska' | 'US/Arizona' | 'US/Central' | 'US/Eastern' | 'US/Hawaii' | 'US/Mountain' | 'US/Pacific' | 'UTC' | 'profile';
    delay_until_time?: string | null;
    delay_until_weekdays?: Array<'friday' | 'monday' | 'saturday' | 'sunday' | 'thursday' | 'tuesday' | 'wednesday'> | null;
};
type TimeDelayAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: TimeDelayEnum;
    links?: Link;
    data: TimeDelayActionData;
};
type TriggerSplitEnum = 'trigger-split';
type MetricPropertyEnum = 'metric-property';
type MetricPropertyCondition = {
    type: MetricPropertyEnum;
    metric_id: string;
    field: string;
    filter: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | NumericOperatorNumericFilter | NumericRangeFilter | BooleanFilter | StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | ListContainsOperatorListContainsFilter | ListLengthFilter | ExistenceOperatorExistenceFilter;
};
type MetricPropertyConditionConditionGroup = {
    conditions: Array<MetricPropertyCondition>;
};
type MetricPropertyConditionFilter = {
    condition_groups: Array<MetricPropertyConditionConditionGroup>;
};
type TriggerBranchActionData = {
    trigger_filter: MetricPropertyConditionFilter;
    trigger_id: string;
    /**
     * Trigger type.
     */
    trigger_type: 'date' | 'list' | 'low-inventory' | 'metric' | 'price-drop' | 'scheduled' | 'segment';
    /**
     * Date trigger type.
     */
    trigger_subtype?: 'custom-object' | 'legacy-custom-object' | 'profile-property' | 'profile-trait';
};
type TriggerBranchAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: TriggerSplitEnum;
    links?: BooleanBranchLinks;
    data?: TriggerBranchActionData;
};
type UpdateProfileEnum = 'update-profile';
type ProfileOperationUpdateOrCreateString = {
    /**
     * The type of operation to perform on a profile property.
     */
    operator: 'create' | 'update';
    property_type: StringEnum;
    property_key: string;
    property_value: string;
};
type ProfileOperationUpdateOrCreateBoolean = {
    /**
     * The type of operation to perform on a profile property.
     */
    operator: 'create' | 'update';
    property_type: BooleanEnum;
    property_key: string;
    property_value: boolean;
};
type ProfileOperationUpdateOrCreateNumeric = {
    /**
     * The type of operation to perform on a profile property.
     */
    operator: 'create' | 'update';
    property_type: NumericEnum;
    property_key: string;
    property_value: number | number;
};
type ProfileOperationUpdateOrCreateDate = {
    /**
     * The type of operation to perform on a profile property.
     */
    operator: 'create' | 'update';
    property_type: DateEnum;
    property_key: string;
    property_value: string | 'today';
};
type ProfileOperationUpdateOrCreateList = {
    /**
     * The type of operation to perform on a profile property.
     */
    operator: 'create' | 'update';
    property_type: ListEnum;
    /**
     * The type of operation to perform on a list property.
     */
    property_operation?: 'add' | 'remove';
    property_key: string;
    property_value: string;
};
type ProfileOperationDelete = {
    /**
     * The type of operation to perform on a profile property.
     */
    operator: 'delete';
    property_key: string;
};
type UpdateProfileActionData = {
    profile_operations: Array<ProfileOperationUpdateOrCreateString | ProfileOperationUpdateOrCreateBoolean | ProfileOperationUpdateOrCreateNumeric | ProfileOperationUpdateOrCreateDate | ProfileOperationUpdateOrCreateList | ProfileOperationDelete>;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type UpdateProfileAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: UpdateProfileEnum;
    links?: Link;
    data?: UpdateProfileActionData;
};
type TargetDateEnum = 'target-date';
type TargetDateActionData = {
    timezone?: 'Africa/Abidjan' | 'Africa/Accra' | 'Africa/Addis_Ababa' | 'Africa/Algiers' | 'Africa/Asmara' | 'Africa/Bamako' | 'Africa/Bangui' | 'Africa/Banjul' | 'Africa/Bissau' | 'Africa/Blantyre' | 'Africa/Brazzaville' | 'Africa/Bujumbura' | 'Africa/Cairo' | 'Africa/Casablanca' | 'Africa/Ceuta' | 'Africa/Conakry' | 'Africa/Dakar' | 'Africa/Dar_es_Salaam' | 'Africa/Djibouti' | 'Africa/Douala' | 'Africa/El_Aaiun' | 'Africa/Freetown' | 'Africa/Gaborone' | 'Africa/Harare' | 'Africa/Johannesburg' | 'Africa/Juba' | 'Africa/Kampala' | 'Africa/Khartoum' | 'Africa/Kigali' | 'Africa/Kinshasa' | 'Africa/Lagos' | 'Africa/Libreville' | 'Africa/Lome' | 'Africa/Luanda' | 'Africa/Lubumbashi' | 'Africa/Lusaka' | 'Africa/Malabo' | 'Africa/Maputo' | 'Africa/Maseru' | 'Africa/Mbabane' | 'Africa/Mogadishu' | 'Africa/Monrovia' | 'Africa/Nairobi' | 'Africa/Ndjamena' | 'Africa/Niamey' | 'Africa/Nouakchott' | 'Africa/Ouagadougou' | 'Africa/Porto-Novo' | 'Africa/Sao_Tome' | 'Africa/Tripoli' | 'Africa/Tunis' | 'Africa/Windhoek' | 'America/Adak' | 'America/Anchorage' | 'America/Anguilla' | 'America/Antigua' | 'America/Araguaina' | 'America/Argentina/Buenos_Aires' | 'America/Argentina/Catamarca' | 'America/Argentina/Cordoba' | 'America/Argentina/Jujuy' | 'America/Argentina/La_Rioja' | 'America/Argentina/Mendoza' | 'America/Argentina/Rio_Gallegos' | 'America/Argentina/Salta' | 'America/Argentina/San_Juan' | 'America/Argentina/San_Luis' | 'America/Argentina/Tucuman' | 'America/Argentina/Ushuaia' | 'America/Aruba' | 'America/Asuncion' | 'America/Atikokan' | 'America/Bahia' | 'America/Bahia_Banderas' | 'America/Barbados' | 'America/Belem' | 'America/Belize' | 'America/Blanc-Sablon' | 'America/Boa_Vista' | 'America/Bogota' | 'America/Boise' | 'America/Cambridge_Bay' | 'America/Campo_Grande' | 'America/Cancun' | 'America/Caracas' | 'America/Cayenne' | 'America/Cayman' | 'America/Chicago' | 'America/Chihuahua' | 'America/Ciudad_Juarez' | 'America/Costa_Rica' | 'America/Creston' | 'America/Cuiaba' | 'America/Curacao' | 'America/Danmarkshavn' | 'America/Dawson' | 'America/Dawson_Creek' | 'America/Denver' | 'America/Detroit' | 'America/Dominica' | 'America/Edmonton' | 'America/Eirunepe' | 'America/El_Salvador' | 'America/Fort_Nelson' | 'America/Fortaleza' | 'America/Glace_Bay' | 'America/Goose_Bay' | 'America/Grand_Turk' | 'America/Grenada' | 'America/Guadeloupe' | 'America/Guatemala' | 'America/Guayaquil' | 'America/Guyana' | 'America/Halifax' | 'America/Havana' | 'America/Hermosillo' | 'America/Indiana/Indianapolis' | 'America/Indiana/Knox' | 'America/Indiana/Marengo' | 'America/Indiana/Petersburg' | 'America/Indiana/Tell_City' | 'America/Indiana/Vevay' | 'America/Indiana/Vincennes' | 'America/Indiana/Winamac' | 'America/Inuvik' | 'America/Iqaluit' | 'America/Jamaica' | 'America/Juneau' | 'America/Kentucky/Louisville' | 'America/Kentucky/Monticello' | 'America/Kralendijk' | 'America/La_Paz' | 'America/Lima' | 'America/Los_Angeles' | 'America/Lower_Princes' | 'America/Maceio' | 'America/Managua' | 'America/Manaus' | 'America/Marigot' | 'America/Martinique' | 'America/Matamoros' | 'America/Mazatlan' | 'America/Menominee' | 'America/Merida' | 'America/Metlakatla' | 'America/Mexico_City' | 'America/Miquelon' | 'America/Moncton' | 'America/Monterrey' | 'America/Montevideo' | 'America/Montserrat' | 'America/Nassau' | 'America/New_York' | 'America/Nome' | 'America/Noronha' | 'America/North_Dakota/Beulah' | 'America/North_Dakota/Center' | 'America/North_Dakota/New_Salem' | 'America/Nuuk' | 'America/Ojinaga' | 'America/Panama' | 'America/Paramaribo' | 'America/Phoenix' | 'America/Port-au-Prince' | 'America/Port_of_Spain' | 'America/Porto_Velho' | 'America/Puerto_Rico' | 'America/Punta_Arenas' | 'America/Rankin_Inlet' | 'America/Recife' | 'America/Regina' | 'America/Resolute' | 'America/Rio_Branco' | 'America/Santarem' | 'America/Santiago' | 'America/Santo_Domingo' | 'America/Sao_Paulo' | 'America/Scoresbysund' | 'America/Sitka' | 'America/St_Barthelemy' | 'America/St_Johns' | 'America/St_Kitts' | 'America/St_Lucia' | 'America/St_Thomas' | 'America/St_Vincent' | 'America/Swift_Current' | 'America/Tegucigalpa' | 'America/Thule' | 'America/Tijuana' | 'America/Toronto' | 'America/Tortola' | 'America/Vancouver' | 'America/Whitehorse' | 'America/Winnipeg' | 'America/Yakutat' | 'Antarctica/Casey' | 'Antarctica/Davis' | 'Antarctica/DumontDUrville' | 'Antarctica/Macquarie' | 'Antarctica/Mawson' | 'Antarctica/McMurdo' | 'Antarctica/Palmer' | 'Antarctica/Rothera' | 'Antarctica/Syowa' | 'Antarctica/Troll' | 'Antarctica/Vostok' | 'Arctic/Longyearbyen' | 'Asia/Aden' | 'Asia/Almaty' | 'Asia/Amman' | 'Asia/Anadyr' | 'Asia/Aqtau' | 'Asia/Aqtobe' | 'Asia/Ashgabat' | 'Asia/Atyrau' | 'Asia/Baghdad' | 'Asia/Bahrain' | 'Asia/Baku' | 'Asia/Bangkok' | 'Asia/Barnaul' | 'Asia/Beirut' | 'Asia/Bishkek' | 'Asia/Brunei' | 'Asia/Chita' | 'Asia/Choibalsan' | 'Asia/Colombo' | 'Asia/Damascus' | 'Asia/Dhaka' | 'Asia/Dili' | 'Asia/Dubai' | 'Asia/Dushanbe' | 'Asia/Famagusta' | 'Asia/Gaza' | 'Asia/Hebron' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Hovd' | 'Asia/Irkutsk' | 'Asia/Jakarta' | 'Asia/Jayapura' | 'Asia/Jerusalem' | 'Asia/Kabul' | 'Asia/Kamchatka' | 'Asia/Karachi' | 'Asia/Kathmandu' | 'Asia/Khandyga' | 'Asia/Kolkata' | 'Asia/Krasnoyarsk' | 'Asia/Kuala_Lumpur' | 'Asia/Kuching' | 'Asia/Kuwait' | 'Asia/Macau' | 'Asia/Magadan' | 'Asia/Makassar' | 'Asia/Manila' | 'Asia/Muscat' | 'Asia/Nicosia' | 'Asia/Novokuznetsk' | 'Asia/Novosibirsk' | 'Asia/Omsk' | 'Asia/Oral' | 'Asia/Phnom_Penh' | 'Asia/Pontianak' | 'Asia/Pyongyang' | 'Asia/Qatar' | 'Asia/Qostanay' | 'Asia/Qyzylorda' | 'Asia/Riyadh' | 'Asia/Sakhalin' | 'Asia/Samarkand' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Srednekolymsk' | 'Asia/Taipei' | 'Asia/Tashkent' | 'Asia/Tbilisi' | 'Asia/Tehran' | 'Asia/Thimphu' | 'Asia/Tokyo' | 'Asia/Tomsk' | 'Asia/Ulaanbaatar' | 'Asia/Urumqi' | 'Asia/Ust-Nera' | 'Asia/Vientiane' | 'Asia/Vladivostok' | 'Asia/Yakutsk' | 'Asia/Yangon' | 'Asia/Yekaterinburg' | 'Asia/Yerevan' | 'Atlantic/Azores' | 'Atlantic/Bermuda' | 'Atlantic/Canary' | 'Atlantic/Cape_Verde' | 'Atlantic/Faroe' | 'Atlantic/Madeira' | 'Atlantic/Reykjavik' | 'Atlantic/South_Georgia' | 'Atlantic/St_Helena' | 'Atlantic/Stanley' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Broken_Hill' | 'Australia/Darwin' | 'Australia/Eucla' | 'Australia/Hobart' | 'Australia/Lindeman' | 'Australia/Lord_Howe' | 'Australia/Melbourne' | 'Australia/Perth' | 'Australia/Sydney' | 'Canada/Atlantic' | 'Canada/Central' | 'Canada/Eastern' | 'Canada/Mountain' | 'Canada/Newfoundland' | 'Canada/Pacific' | 'Europe/Amsterdam' | 'Europe/Andorra' | 'Europe/Astrakhan' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Bratislava' | 'Europe/Brussels' | 'Europe/Bucharest' | 'Europe/Budapest' | 'Europe/Busingen' | 'Europe/Chisinau' | 'Europe/Copenhagen' | 'Europe/Dublin' | 'Europe/Gibraltar' | 'Europe/Guernsey' | 'Europe/Helsinki' | 'Europe/Isle_of_Man' | 'Europe/Istanbul' | 'Europe/Jersey' | 'Europe/Kaliningrad' | 'Europe/Kirov' | 'Europe/Kyiv' | 'Europe/Lisbon' | 'Europe/Ljubljana' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Malta' | 'Europe/Mariehamn' | 'Europe/Minsk' | 'Europe/Monaco' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Podgorica' | 'Europe/Prague' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Samara' | 'Europe/San_Marino' | 'Europe/Sarajevo' | 'Europe/Saratov' | 'Europe/Simferopol' | 'Europe/Skopje' | 'Europe/Sofia' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Tirane' | 'Europe/Ulyanovsk' | 'Europe/Vaduz' | 'Europe/Vatican' | 'Europe/Vienna' | 'Europe/Vilnius' | 'Europe/Volgograd' | 'Europe/Warsaw' | 'Europe/Zagreb' | 'Europe/Zurich' | 'GMT' | 'Indian/Antananarivo' | 'Indian/Chagos' | 'Indian/Christmas' | 'Indian/Cocos' | 'Indian/Comoro' | 'Indian/Kerguelen' | 'Indian/Mahe' | 'Indian/Maldives' | 'Indian/Mauritius' | 'Indian/Mayotte' | 'Indian/Reunion' | 'Pacific/Apia' | 'Pacific/Auckland' | 'Pacific/Bougainville' | 'Pacific/Chatham' | 'Pacific/Chuuk' | 'Pacific/Easter' | 'Pacific/Efate' | 'Pacific/Fakaofo' | 'Pacific/Fiji' | 'Pacific/Funafuti' | 'Pacific/Galapagos' | 'Pacific/Gambier' | 'Pacific/Guadalcanal' | 'Pacific/Guam' | 'Pacific/Honolulu' | 'Pacific/Kanton' | 'Pacific/Kiritimati' | 'Pacific/Kosrae' | 'Pacific/Kwajalein' | 'Pacific/Majuro' | 'Pacific/Marquesas' | 'Pacific/Midway' | 'Pacific/Nauru' | 'Pacific/Niue' | 'Pacific/Norfolk' | 'Pacific/Noumea' | 'Pacific/Pago_Pago' | 'Pacific/Palau' | 'Pacific/Pitcairn' | 'Pacific/Pohnpei' | 'Pacific/Port_Moresby' | 'Pacific/Rarotonga' | 'Pacific/Saipan' | 'Pacific/Tahiti' | 'Pacific/Tarawa' | 'Pacific/Tongatapu' | 'Pacific/Wake' | 'Pacific/Wallis' | 'US/Alaska' | 'US/Arizona' | 'US/Central' | 'US/Eastern' | 'US/Hawaii' | 'US/Mountain' | 'US/Pacific' | 'UTC' | 'profile';
    target_time?: string;
    target_days?: Array<'friday' | 'monday' | 'saturday' | 'sunday' | 'thursday' | 'tuesday' | 'wednesday'> | null;
};
type TargetDateAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: TargetDateEnum;
    links?: Link;
    data: TargetDateActionData;
};
type CountdownDelayEnum = 'countdown-delay';
type CountdownDelayActionData = {
    /**
     * Defined as FlowDateTrigger attributes in app.
     */
    unit?: 'days' | 'months' | 'weeks';
    value?: number;
    timezone?: 'Africa/Abidjan' | 'Africa/Accra' | 'Africa/Addis_Ababa' | 'Africa/Algiers' | 'Africa/Asmara' | 'Africa/Bamako' | 'Africa/Bangui' | 'Africa/Banjul' | 'Africa/Bissau' | 'Africa/Blantyre' | 'Africa/Brazzaville' | 'Africa/Bujumbura' | 'Africa/Cairo' | 'Africa/Casablanca' | 'Africa/Ceuta' | 'Africa/Conakry' | 'Africa/Dakar' | 'Africa/Dar_es_Salaam' | 'Africa/Djibouti' | 'Africa/Douala' | 'Africa/El_Aaiun' | 'Africa/Freetown' | 'Africa/Gaborone' | 'Africa/Harare' | 'Africa/Johannesburg' | 'Africa/Juba' | 'Africa/Kampala' | 'Africa/Khartoum' | 'Africa/Kigali' | 'Africa/Kinshasa' | 'Africa/Lagos' | 'Africa/Libreville' | 'Africa/Lome' | 'Africa/Luanda' | 'Africa/Lubumbashi' | 'Africa/Lusaka' | 'Africa/Malabo' | 'Africa/Maputo' | 'Africa/Maseru' | 'Africa/Mbabane' | 'Africa/Mogadishu' | 'Africa/Monrovia' | 'Africa/Nairobi' | 'Africa/Ndjamena' | 'Africa/Niamey' | 'Africa/Nouakchott' | 'Africa/Ouagadougou' | 'Africa/Porto-Novo' | 'Africa/Sao_Tome' | 'Africa/Tripoli' | 'Africa/Tunis' | 'Africa/Windhoek' | 'America/Adak' | 'America/Anchorage' | 'America/Anguilla' | 'America/Antigua' | 'America/Araguaina' | 'America/Argentina/Buenos_Aires' | 'America/Argentina/Catamarca' | 'America/Argentina/Cordoba' | 'America/Argentina/Jujuy' | 'America/Argentina/La_Rioja' | 'America/Argentina/Mendoza' | 'America/Argentina/Rio_Gallegos' | 'America/Argentina/Salta' | 'America/Argentina/San_Juan' | 'America/Argentina/San_Luis' | 'America/Argentina/Tucuman' | 'America/Argentina/Ushuaia' | 'America/Aruba' | 'America/Asuncion' | 'America/Atikokan' | 'America/Bahia' | 'America/Bahia_Banderas' | 'America/Barbados' | 'America/Belem' | 'America/Belize' | 'America/Blanc-Sablon' | 'America/Boa_Vista' | 'America/Bogota' | 'America/Boise' | 'America/Cambridge_Bay' | 'America/Campo_Grande' | 'America/Cancun' | 'America/Caracas' | 'America/Cayenne' | 'America/Cayman' | 'America/Chicago' | 'America/Chihuahua' | 'America/Ciudad_Juarez' | 'America/Costa_Rica' | 'America/Creston' | 'America/Cuiaba' | 'America/Curacao' | 'America/Danmarkshavn' | 'America/Dawson' | 'America/Dawson_Creek' | 'America/Denver' | 'America/Detroit' | 'America/Dominica' | 'America/Edmonton' | 'America/Eirunepe' | 'America/El_Salvador' | 'America/Fort_Nelson' | 'America/Fortaleza' | 'America/Glace_Bay' | 'America/Goose_Bay' | 'America/Grand_Turk' | 'America/Grenada' | 'America/Guadeloupe' | 'America/Guatemala' | 'America/Guayaquil' | 'America/Guyana' | 'America/Halifax' | 'America/Havana' | 'America/Hermosillo' | 'America/Indiana/Indianapolis' | 'America/Indiana/Knox' | 'America/Indiana/Marengo' | 'America/Indiana/Petersburg' | 'America/Indiana/Tell_City' | 'America/Indiana/Vevay' | 'America/Indiana/Vincennes' | 'America/Indiana/Winamac' | 'America/Inuvik' | 'America/Iqaluit' | 'America/Jamaica' | 'America/Juneau' | 'America/Kentucky/Louisville' | 'America/Kentucky/Monticello' | 'America/Kralendijk' | 'America/La_Paz' | 'America/Lima' | 'America/Los_Angeles' | 'America/Lower_Princes' | 'America/Maceio' | 'America/Managua' | 'America/Manaus' | 'America/Marigot' | 'America/Martinique' | 'America/Matamoros' | 'America/Mazatlan' | 'America/Menominee' | 'America/Merida' | 'America/Metlakatla' | 'America/Mexico_City' | 'America/Miquelon' | 'America/Moncton' | 'America/Monterrey' | 'America/Montevideo' | 'America/Montserrat' | 'America/Nassau' | 'America/New_York' | 'America/Nome' | 'America/Noronha' | 'America/North_Dakota/Beulah' | 'America/North_Dakota/Center' | 'America/North_Dakota/New_Salem' | 'America/Nuuk' | 'America/Ojinaga' | 'America/Panama' | 'America/Paramaribo' | 'America/Phoenix' | 'America/Port-au-Prince' | 'America/Port_of_Spain' | 'America/Porto_Velho' | 'America/Puerto_Rico' | 'America/Punta_Arenas' | 'America/Rankin_Inlet' | 'America/Recife' | 'America/Regina' | 'America/Resolute' | 'America/Rio_Branco' | 'America/Santarem' | 'America/Santiago' | 'America/Santo_Domingo' | 'America/Sao_Paulo' | 'America/Scoresbysund' | 'America/Sitka' | 'America/St_Barthelemy' | 'America/St_Johns' | 'America/St_Kitts' | 'America/St_Lucia' | 'America/St_Thomas' | 'America/St_Vincent' | 'America/Swift_Current' | 'America/Tegucigalpa' | 'America/Thule' | 'America/Tijuana' | 'America/Toronto' | 'America/Tortola' | 'America/Vancouver' | 'America/Whitehorse' | 'America/Winnipeg' | 'America/Yakutat' | 'Antarctica/Casey' | 'Antarctica/Davis' | 'Antarctica/DumontDUrville' | 'Antarctica/Macquarie' | 'Antarctica/Mawson' | 'Antarctica/McMurdo' | 'Antarctica/Palmer' | 'Antarctica/Rothera' | 'Antarctica/Syowa' | 'Antarctica/Troll' | 'Antarctica/Vostok' | 'Arctic/Longyearbyen' | 'Asia/Aden' | 'Asia/Almaty' | 'Asia/Amman' | 'Asia/Anadyr' | 'Asia/Aqtau' | 'Asia/Aqtobe' | 'Asia/Ashgabat' | 'Asia/Atyrau' | 'Asia/Baghdad' | 'Asia/Bahrain' | 'Asia/Baku' | 'Asia/Bangkok' | 'Asia/Barnaul' | 'Asia/Beirut' | 'Asia/Bishkek' | 'Asia/Brunei' | 'Asia/Chita' | 'Asia/Choibalsan' | 'Asia/Colombo' | 'Asia/Damascus' | 'Asia/Dhaka' | 'Asia/Dili' | 'Asia/Dubai' | 'Asia/Dushanbe' | 'Asia/Famagusta' | 'Asia/Gaza' | 'Asia/Hebron' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Hovd' | 'Asia/Irkutsk' | 'Asia/Jakarta' | 'Asia/Jayapura' | 'Asia/Jerusalem' | 'Asia/Kabul' | 'Asia/Kamchatka' | 'Asia/Karachi' | 'Asia/Kathmandu' | 'Asia/Khandyga' | 'Asia/Kolkata' | 'Asia/Krasnoyarsk' | 'Asia/Kuala_Lumpur' | 'Asia/Kuching' | 'Asia/Kuwait' | 'Asia/Macau' | 'Asia/Magadan' | 'Asia/Makassar' | 'Asia/Manila' | 'Asia/Muscat' | 'Asia/Nicosia' | 'Asia/Novokuznetsk' | 'Asia/Novosibirsk' | 'Asia/Omsk' | 'Asia/Oral' | 'Asia/Phnom_Penh' | 'Asia/Pontianak' | 'Asia/Pyongyang' | 'Asia/Qatar' | 'Asia/Qostanay' | 'Asia/Qyzylorda' | 'Asia/Riyadh' | 'Asia/Sakhalin' | 'Asia/Samarkand' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Srednekolymsk' | 'Asia/Taipei' | 'Asia/Tashkent' | 'Asia/Tbilisi' | 'Asia/Tehran' | 'Asia/Thimphu' | 'Asia/Tokyo' | 'Asia/Tomsk' | 'Asia/Ulaanbaatar' | 'Asia/Urumqi' | 'Asia/Ust-Nera' | 'Asia/Vientiane' | 'Asia/Vladivostok' | 'Asia/Yakutsk' | 'Asia/Yangon' | 'Asia/Yekaterinburg' | 'Asia/Yerevan' | 'Atlantic/Azores' | 'Atlantic/Bermuda' | 'Atlantic/Canary' | 'Atlantic/Cape_Verde' | 'Atlantic/Faroe' | 'Atlantic/Madeira' | 'Atlantic/Reykjavik' | 'Atlantic/South_Georgia' | 'Atlantic/St_Helena' | 'Atlantic/Stanley' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Broken_Hill' | 'Australia/Darwin' | 'Australia/Eucla' | 'Australia/Hobart' | 'Australia/Lindeman' | 'Australia/Lord_Howe' | 'Australia/Melbourne' | 'Australia/Perth' | 'Australia/Sydney' | 'Canada/Atlantic' | 'Canada/Central' | 'Canada/Eastern' | 'Canada/Mountain' | 'Canada/Newfoundland' | 'Canada/Pacific' | 'Europe/Amsterdam' | 'Europe/Andorra' | 'Europe/Astrakhan' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Bratislava' | 'Europe/Brussels' | 'Europe/Bucharest' | 'Europe/Budapest' | 'Europe/Busingen' | 'Europe/Chisinau' | 'Europe/Copenhagen' | 'Europe/Dublin' | 'Europe/Gibraltar' | 'Europe/Guernsey' | 'Europe/Helsinki' | 'Europe/Isle_of_Man' | 'Europe/Istanbul' | 'Europe/Jersey' | 'Europe/Kaliningrad' | 'Europe/Kirov' | 'Europe/Kyiv' | 'Europe/Lisbon' | 'Europe/Ljubljana' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Malta' | 'Europe/Mariehamn' | 'Europe/Minsk' | 'Europe/Monaco' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Podgorica' | 'Europe/Prague' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Samara' | 'Europe/San_Marino' | 'Europe/Sarajevo' | 'Europe/Saratov' | 'Europe/Simferopol' | 'Europe/Skopje' | 'Europe/Sofia' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Tirane' | 'Europe/Ulyanovsk' | 'Europe/Vaduz' | 'Europe/Vatican' | 'Europe/Vienna' | 'Europe/Vilnius' | 'Europe/Volgograd' | 'Europe/Warsaw' | 'Europe/Zagreb' | 'Europe/Zurich' | 'GMT' | 'Indian/Antananarivo' | 'Indian/Chagos' | 'Indian/Christmas' | 'Indian/Cocos' | 'Indian/Comoro' | 'Indian/Kerguelen' | 'Indian/Mahe' | 'Indian/Maldives' | 'Indian/Mauritius' | 'Indian/Mayotte' | 'Indian/Reunion' | 'Pacific/Apia' | 'Pacific/Auckland' | 'Pacific/Bougainville' | 'Pacific/Chatham' | 'Pacific/Chuuk' | 'Pacific/Easter' | 'Pacific/Efate' | 'Pacific/Fakaofo' | 'Pacific/Fiji' | 'Pacific/Funafuti' | 'Pacific/Galapagos' | 'Pacific/Gambier' | 'Pacific/Guadalcanal' | 'Pacific/Guam' | 'Pacific/Honolulu' | 'Pacific/Kanton' | 'Pacific/Kiritimati' | 'Pacific/Kosrae' | 'Pacific/Kwajalein' | 'Pacific/Majuro' | 'Pacific/Marquesas' | 'Pacific/Midway' | 'Pacific/Nauru' | 'Pacific/Niue' | 'Pacific/Norfolk' | 'Pacific/Noumea' | 'Pacific/Pago_Pago' | 'Pacific/Palau' | 'Pacific/Pitcairn' | 'Pacific/Pohnpei' | 'Pacific/Port_Moresby' | 'Pacific/Rarotonga' | 'Pacific/Saipan' | 'Pacific/Tahiti' | 'Pacific/Tarawa' | 'Pacific/Tongatapu' | 'Pacific/Wake' | 'Pacific/Wallis' | 'US/Alaska' | 'US/Arizona' | 'US/Central' | 'US/Eastern' | 'US/Hawaii' | 'US/Mountain' | 'US/Pacific' | 'UTC' | 'profile';
    delay_until_time?: string | null;
    delay_until_weekdays?: Array<'friday' | 'monday' | 'saturday' | 'sunday' | 'thursday' | 'tuesday' | 'wednesday'> | null;
};
type CountdownDelayAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: CountdownDelayEnum;
    links?: Link;
    data: CountdownDelayActionData;
};
type AbTestEnum = 'ab-test';
type AutomaticWinnerSelectionSettings = {
    enabled: boolean;
    automatic_end_date?: string | null;
    automatic_end_statistical_certainty: boolean;
};
type AbTestAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: AbTestEnum;
    links?: Link;
    data: {
        /**
         * Flow action status.
         */
        status?: 'disabled' | 'draft' | 'live' | 'manual';
        /**
         * The status of the A/B test action experiment.
         */
        experiment_status?: 'completed' | 'draft' | 'live';
        main_action: SendEmailAction | SendSmsAction;
        current_experiment?: {
            id?: string | null;
            name?: string | null;
            variations: Array<SendEmailAction | SendSmsAction>;
            allocations?: {
                [key: string]: unknown;
            } | null;
            started?: string | null;
            /**
             * The metric to use to determine the winner of the A/B test action.
             *
             * Note that this is different from the metrics used as a flow trigger.
             */
            winner_metric?: 'submission' | 'unique-clicks' | 'unique-opens' | 'unique-placed-orders';
            automatic_winner_selection_settings?: AutomaticWinnerSelectionSettings;
        } | null;
    };
};
type InternalServiceEnum = 'internal-service';
type ScheduleReportEnum = 'schedule-report';
type InternalScheduledReportData = {
    service_method_type: ScheduleReportEnum;
    report_id: string;
};
type TrackEventEnum = 'track-event';
type InternalTrackEventData = {
    service_method_type: TrackEventEnum;
    event_key?: string | null;
    event_payload?: {
        [key: string]: unknown;
    } | null;
    tracking_company_id?: string | null;
};
type ScheduleReportBuilderReportEnum = 'schedule-report-builder-report';
type InternalScheduledReportBuilderReportData = {
    service_method_type: ScheduleReportBuilderReportEnum;
    report_id: string;
};
type UnknownEnum = 'unknown';
type InternalUnknownServiceData = {
    service_method_type: UnknownEnum;
};
type InternalServiceActionData = {
    service_configuration?: InternalScheduledReportData | InternalTrackEventData | InternalScheduledReportBuilderReportData | InternalUnknownServiceData | null;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type InternalServiceAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: InternalServiceEnum;
    links?: Link;
    data?: InternalServiceActionData;
};
type CodeEnum = 'code';
type CodeAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: CodeEnum;
    links?: Link;
    data?: unknown;
};
type MultiBranchSplitEnum = 'multi-branch-split';
type MultiBranchSplitBranch = {
    branch_id: string;
    order?: number | null;
    is_else?: boolean;
    branch_filter?: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition | MetricPropertyCondition>;
        }>;
    } | null;
    links?: Link;
    name?: string | null;
};
type MultiBranchSplitActionData = {
    branches: Array<MultiBranchSplitBranch>;
    name: string;
};
type MultiBranchSplitAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    type: MultiBranchSplitEnum;
    links?: unknown;
    data?: MultiBranchSplitActionData;
};
type ListUpdateActionData = {
    name: string;
    /**
     * The enum for whether the action will add/remove from the list in the
     * List Update Action.
     */
    on_execution: false | true;
    list_id: string | null;
    /**
     * Flow action status.
     */
    status?: 'disabled' | 'draft' | 'live' | 'manual';
};
type ListUpdateEnum = 'list-update';
type ListUpdateAction = {
    /**
     * The real ID of an action.
     */
    id?: string | null;
    /**
     * A temporary ID to use only during a create operation. Existing actions should use the id field.
     */
    temporary_id?: string | null;
    data: ListUpdateActionData;
    type: ListUpdateEnum;
    links?: Link;
};
type FlowActionEncodedResponseObjectResource = {
    type: FlowActionEnum;
    id: string;
    attributes: {
        created?: string | null;
        updated?: string | null;
        /**
         * The encoded flow action definition.
         */
        definition?: ActionOutputSplitAction | BackInStockDelayAction | ConditionalBranchAction | ContentExperimentAction | SendEmailAction | SendPushNotificationAction | SendSmsAction | SendWebhookAction | SendInternalAlertAction | SendWhatsAppAction | TimeDelayAction | TriggerBranchAction | UpdateProfileAction | TargetDateAction | CountdownDelayAction | AbTestAction | InternalServiceAction | CodeAction | MultiBranchSplitAction | ListUpdateAction | null;
    };
    links: ObjectLinks;
};
type GetFlowResponseCollectionCompoundDocument = {
    data: Array<FlowResponseObjectResource & {
        relationships?: {
            'flow-actions'?: {
                data?: Array<{
                    type: FlowActionEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<FlowActionEncodedResponseObjectResource | TagResponseObjectResource>;
};
type ListTrigger = {
    type: ListEnum;
    id?: string | null;
};
type SegmentTrigger = {
    type: SegmentEnum;
    id?: string | null;
};
type MetricTrigger = {
    type: MetricEnum;
    id?: string | null;
    trigger_filter?: MetricPropertyConditionFilter;
};
type ProfilePropertyDateTrigger = {
    type: DateEnum;
    date_field_type: ProfilePropertyEnum;
    date_profile_property: string;
    /**
     * See FlowDateTrigger.UNIT_CHOICES in app and CountdownUnit in fender.
     */
    timedelta_unit_before_date?: 'days' | 'months' | 'weeks';
    timedelta_value_before_date: number;
    /**
     * aka RepeatTypes in app and RepeatType in fender.
     */
    recurrence_frequency?: 'annually' | 'monthly' | 'never' | 'weekly';
    timezone?: 'Africa/Abidjan' | 'Africa/Accra' | 'Africa/Addis_Ababa' | 'Africa/Algiers' | 'Africa/Asmara' | 'Africa/Bamako' | 'Africa/Bangui' | 'Africa/Banjul' | 'Africa/Bissau' | 'Africa/Blantyre' | 'Africa/Brazzaville' | 'Africa/Bujumbura' | 'Africa/Cairo' | 'Africa/Casablanca' | 'Africa/Ceuta' | 'Africa/Conakry' | 'Africa/Dakar' | 'Africa/Dar_es_Salaam' | 'Africa/Djibouti' | 'Africa/Douala' | 'Africa/El_Aaiun' | 'Africa/Freetown' | 'Africa/Gaborone' | 'Africa/Harare' | 'Africa/Johannesburg' | 'Africa/Juba' | 'Africa/Kampala' | 'Africa/Khartoum' | 'Africa/Kigali' | 'Africa/Kinshasa' | 'Africa/Lagos' | 'Africa/Libreville' | 'Africa/Lome' | 'Africa/Luanda' | 'Africa/Lubumbashi' | 'Africa/Lusaka' | 'Africa/Malabo' | 'Africa/Maputo' | 'Africa/Maseru' | 'Africa/Mbabane' | 'Africa/Mogadishu' | 'Africa/Monrovia' | 'Africa/Nairobi' | 'Africa/Ndjamena' | 'Africa/Niamey' | 'Africa/Nouakchott' | 'Africa/Ouagadougou' | 'Africa/Porto-Novo' | 'Africa/Sao_Tome' | 'Africa/Tripoli' | 'Africa/Tunis' | 'Africa/Windhoek' | 'America/Adak' | 'America/Anchorage' | 'America/Anguilla' | 'America/Antigua' | 'America/Araguaina' | 'America/Argentina/Buenos_Aires' | 'America/Argentina/Catamarca' | 'America/Argentina/Cordoba' | 'America/Argentina/Jujuy' | 'America/Argentina/La_Rioja' | 'America/Argentina/Mendoza' | 'America/Argentina/Rio_Gallegos' | 'America/Argentina/Salta' | 'America/Argentina/San_Juan' | 'America/Argentina/San_Luis' | 'America/Argentina/Tucuman' | 'America/Argentina/Ushuaia' | 'America/Aruba' | 'America/Asuncion' | 'America/Atikokan' | 'America/Bahia' | 'America/Bahia_Banderas' | 'America/Barbados' | 'America/Belem' | 'America/Belize' | 'America/Blanc-Sablon' | 'America/Boa_Vista' | 'America/Bogota' | 'America/Boise' | 'America/Cambridge_Bay' | 'America/Campo_Grande' | 'America/Cancun' | 'America/Caracas' | 'America/Cayenne' | 'America/Cayman' | 'America/Chicago' | 'America/Chihuahua' | 'America/Ciudad_Juarez' | 'America/Costa_Rica' | 'America/Creston' | 'America/Cuiaba' | 'America/Curacao' | 'America/Danmarkshavn' | 'America/Dawson' | 'America/Dawson_Creek' | 'America/Denver' | 'America/Detroit' | 'America/Dominica' | 'America/Edmonton' | 'America/Eirunepe' | 'America/El_Salvador' | 'America/Fort_Nelson' | 'America/Fortaleza' | 'America/Glace_Bay' | 'America/Goose_Bay' | 'America/Grand_Turk' | 'America/Grenada' | 'America/Guadeloupe' | 'America/Guatemala' | 'America/Guayaquil' | 'America/Guyana' | 'America/Halifax' | 'America/Havana' | 'America/Hermosillo' | 'America/Indiana/Indianapolis' | 'America/Indiana/Knox' | 'America/Indiana/Marengo' | 'America/Indiana/Petersburg' | 'America/Indiana/Tell_City' | 'America/Indiana/Vevay' | 'America/Indiana/Vincennes' | 'America/Indiana/Winamac' | 'America/Inuvik' | 'America/Iqaluit' | 'America/Jamaica' | 'America/Juneau' | 'America/Kentucky/Louisville' | 'America/Kentucky/Monticello' | 'America/Kralendijk' | 'America/La_Paz' | 'America/Lima' | 'America/Los_Angeles' | 'America/Lower_Princes' | 'America/Maceio' | 'America/Managua' | 'America/Manaus' | 'America/Marigot' | 'America/Martinique' | 'America/Matamoros' | 'America/Mazatlan' | 'America/Menominee' | 'America/Merida' | 'America/Metlakatla' | 'America/Mexico_City' | 'America/Miquelon' | 'America/Moncton' | 'America/Monterrey' | 'America/Montevideo' | 'America/Montserrat' | 'America/Nassau' | 'America/New_York' | 'America/Nome' | 'America/Noronha' | 'America/North_Dakota/Beulah' | 'America/North_Dakota/Center' | 'America/North_Dakota/New_Salem' | 'America/Nuuk' | 'America/Ojinaga' | 'America/Panama' | 'America/Paramaribo' | 'America/Phoenix' | 'America/Port-au-Prince' | 'America/Port_of_Spain' | 'America/Porto_Velho' | 'America/Puerto_Rico' | 'America/Punta_Arenas' | 'America/Rankin_Inlet' | 'America/Recife' | 'America/Regina' | 'America/Resolute' | 'America/Rio_Branco' | 'America/Santarem' | 'America/Santiago' | 'America/Santo_Domingo' | 'America/Sao_Paulo' | 'America/Scoresbysund' | 'America/Sitka' | 'America/St_Barthelemy' | 'America/St_Johns' | 'America/St_Kitts' | 'America/St_Lucia' | 'America/St_Thomas' | 'America/St_Vincent' | 'America/Swift_Current' | 'America/Tegucigalpa' | 'America/Thule' | 'America/Tijuana' | 'America/Toronto' | 'America/Tortola' | 'America/Vancouver' | 'America/Whitehorse' | 'America/Winnipeg' | 'America/Yakutat' | 'Antarctica/Casey' | 'Antarctica/Davis' | 'Antarctica/DumontDUrville' | 'Antarctica/Macquarie' | 'Antarctica/Mawson' | 'Antarctica/McMurdo' | 'Antarctica/Palmer' | 'Antarctica/Rothera' | 'Antarctica/Syowa' | 'Antarctica/Troll' | 'Antarctica/Vostok' | 'Arctic/Longyearbyen' | 'Asia/Aden' | 'Asia/Almaty' | 'Asia/Amman' | 'Asia/Anadyr' | 'Asia/Aqtau' | 'Asia/Aqtobe' | 'Asia/Ashgabat' | 'Asia/Atyrau' | 'Asia/Baghdad' | 'Asia/Bahrain' | 'Asia/Baku' | 'Asia/Bangkok' | 'Asia/Barnaul' | 'Asia/Beirut' | 'Asia/Bishkek' | 'Asia/Brunei' | 'Asia/Chita' | 'Asia/Choibalsan' | 'Asia/Colombo' | 'Asia/Damascus' | 'Asia/Dhaka' | 'Asia/Dili' | 'Asia/Dubai' | 'Asia/Dushanbe' | 'Asia/Famagusta' | 'Asia/Gaza' | 'Asia/Hebron' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Hovd' | 'Asia/Irkutsk' | 'Asia/Jakarta' | 'Asia/Jayapura' | 'Asia/Jerusalem' | 'Asia/Kabul' | 'Asia/Kamchatka' | 'Asia/Karachi' | 'Asia/Kathmandu' | 'Asia/Khandyga' | 'Asia/Kolkata' | 'Asia/Krasnoyarsk' | 'Asia/Kuala_Lumpur' | 'Asia/Kuching' | 'Asia/Kuwait' | 'Asia/Macau' | 'Asia/Magadan' | 'Asia/Makassar' | 'Asia/Manila' | 'Asia/Muscat' | 'Asia/Nicosia' | 'Asia/Novokuznetsk' | 'Asia/Novosibirsk' | 'Asia/Omsk' | 'Asia/Oral' | 'Asia/Phnom_Penh' | 'Asia/Pontianak' | 'Asia/Pyongyang' | 'Asia/Qatar' | 'Asia/Qostanay' | 'Asia/Qyzylorda' | 'Asia/Riyadh' | 'Asia/Sakhalin' | 'Asia/Samarkand' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Srednekolymsk' | 'Asia/Taipei' | 'Asia/Tashkent' | 'Asia/Tbilisi' | 'Asia/Tehran' | 'Asia/Thimphu' | 'Asia/Tokyo' | 'Asia/Tomsk' | 'Asia/Ulaanbaatar' | 'Asia/Urumqi' | 'Asia/Ust-Nera' | 'Asia/Vientiane' | 'Asia/Vladivostok' | 'Asia/Yakutsk' | 'Asia/Yangon' | 'Asia/Yekaterinburg' | 'Asia/Yerevan' | 'Atlantic/Azores' | 'Atlantic/Bermuda' | 'Atlantic/Canary' | 'Atlantic/Cape_Verde' | 'Atlantic/Faroe' | 'Atlantic/Madeira' | 'Atlantic/Reykjavik' | 'Atlantic/South_Georgia' | 'Atlantic/St_Helena' | 'Atlantic/Stanley' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Broken_Hill' | 'Australia/Darwin' | 'Australia/Eucla' | 'Australia/Hobart' | 'Australia/Lindeman' | 'Australia/Lord_Howe' | 'Australia/Melbourne' | 'Australia/Perth' | 'Australia/Sydney' | 'Canada/Atlantic' | 'Canada/Central' | 'Canada/Eastern' | 'Canada/Mountain' | 'Canada/Newfoundland' | 'Canada/Pacific' | 'Europe/Amsterdam' | 'Europe/Andorra' | 'Europe/Astrakhan' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Bratislava' | 'Europe/Brussels' | 'Europe/Bucharest' | 'Europe/Budapest' | 'Europe/Busingen' | 'Europe/Chisinau' | 'Europe/Copenhagen' | 'Europe/Dublin' | 'Europe/Gibraltar' | 'Europe/Guernsey' | 'Europe/Helsinki' | 'Europe/Isle_of_Man' | 'Europe/Istanbul' | 'Europe/Jersey' | 'Europe/Kaliningrad' | 'Europe/Kirov' | 'Europe/Kyiv' | 'Europe/Lisbon' | 'Europe/Ljubljana' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Malta' | 'Europe/Mariehamn' | 'Europe/Minsk' | 'Europe/Monaco' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Podgorica' | 'Europe/Prague' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Samara' | 'Europe/San_Marino' | 'Europe/Sarajevo' | 'Europe/Saratov' | 'Europe/Simferopol' | 'Europe/Skopje' | 'Europe/Sofia' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Tirane' | 'Europe/Ulyanovsk' | 'Europe/Vaduz' | 'Europe/Vatican' | 'Europe/Vienna' | 'Europe/Vilnius' | 'Europe/Volgograd' | 'Europe/Warsaw' | 'Europe/Zagreb' | 'Europe/Zurich' | 'GMT' | 'Indian/Antananarivo' | 'Indian/Chagos' | 'Indian/Christmas' | 'Indian/Cocos' | 'Indian/Comoro' | 'Indian/Kerguelen' | 'Indian/Mahe' | 'Indian/Maldives' | 'Indian/Mauritius' | 'Indian/Mayotte' | 'Indian/Reunion' | 'Pacific/Apia' | 'Pacific/Auckland' | 'Pacific/Bougainville' | 'Pacific/Chatham' | 'Pacific/Chuuk' | 'Pacific/Easter' | 'Pacific/Efate' | 'Pacific/Fakaofo' | 'Pacific/Fiji' | 'Pacific/Funafuti' | 'Pacific/Galapagos' | 'Pacific/Gambier' | 'Pacific/Guadalcanal' | 'Pacific/Guam' | 'Pacific/Honolulu' | 'Pacific/Kanton' | 'Pacific/Kiritimati' | 'Pacific/Kosrae' | 'Pacific/Kwajalein' | 'Pacific/Majuro' | 'Pacific/Marquesas' | 'Pacific/Midway' | 'Pacific/Nauru' | 'Pacific/Niue' | 'Pacific/Norfolk' | 'Pacific/Noumea' | 'Pacific/Pago_Pago' | 'Pacific/Palau' | 'Pacific/Pitcairn' | 'Pacific/Pohnpei' | 'Pacific/Port_Moresby' | 'Pacific/Rarotonga' | 'Pacific/Saipan' | 'Pacific/Tahiti' | 'Pacific/Tarawa' | 'Pacific/Tongatapu' | 'Pacific/Wake' | 'Pacific/Wallis' | 'US/Alaska' | 'US/Arizona' | 'US/Central' | 'US/Eastern' | 'US/Hawaii' | 'US/Mountain' | 'US/Pacific' | 'UTC' | 'profile';
    trigger_time: string;
    trigger_days?: Array<'friday' | 'monday' | 'saturday' | 'sunday' | 'thursday' | 'tuesday' | 'wednesday'> | null;
};
type PriceDropEnum = 'price-drop';
type PriceDropPropertyEnum = 'price-drop-property';
type PriceDropCondition = {
    type: PriceDropPropertyEnum;
    metric_id: string | null;
    field: string;
    filter: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | NumericOperatorNumericFilter | NumericRangeFilter | BooleanFilter | StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | ListContainsOperatorListContainsFilter | ListLengthFilter | ExistenceOperatorExistenceFilter;
};
type PriceDropConditionConditionGroup = {
    conditions: Array<PriceDropCondition>;
};
type PriceDropConditionFilter = {
    condition_groups: Array<PriceDropConditionConditionGroup>;
};
type PriceDropTrigger = {
    type: PriceDropEnum;
    trigger_filter: PriceDropConditionFilter;
    price_drop_amount_value: number | number;
    /**
     * Price Drop amount type.
     */
    price_drop_amount_unit?: 'currency' | 'percent';
    audience: Array<'checkout-started' | 'viewed'>;
    timeframe_days?: number;
    /**
     * Currency type.
     */
    currency_type?: 'usd';
};
type LowInventoryEnum = 'low-inventory';
type LowInventoryPropertyEnum = 'low-inventory-property';
type LowInventoryCondition = {
    type: LowInventoryPropertyEnum;
    metric_id: string | null;
    field: string;
    filter: StringOperatorStringFilter | StringArrayOperatorStringArrayFilter | NumericOperatorNumericFilter | NumericRangeFilter | BooleanFilter | StaticDateFilter | StaticDateRangeFilter | RelativeDateOperatorBaseRelativeDateFilter | RelativeAnniversaryDateFilter | RelativeDateRangeFilter | CalendarDateFilter | AnniversaryDateFilter | ListContainsOperatorListContainsFilter | ListLengthFilter | ExistenceOperatorExistenceFilter;
};
type LowInventoryConditionConditionGroup = {
    conditions: Array<LowInventoryCondition>;
};
type LowInventoryConditionFilter = {
    condition_groups: Array<LowInventoryConditionConditionGroup>;
};
type LowInventoryTrigger = {
    type: LowInventoryEnum;
    /**
     * Low inventory product level.
     */
    product_level: 'product' | 'variant';
    trigger_filter: LowInventoryConditionFilter;
    inventory_count: number;
    audience: Array<'added-to-cart' | 'checkout-started' | 'viewed'>;
    timeframe_days?: number;
};
type ProfileNotInFlowEnum = 'profile-not-in-flow';
type ProfileNotInFlowCondition = {
    type: ProfileNotInFlowEnum;
    timeframe_filter: AlltimeDateFilter | InTheLastBaseRelativeDateFilter;
};
type ReentryCriteria = {
    duration: number;
    unit: 'day' | 'hour' | 'week' | 'alltime';
};
type FlowDefinition = {
    /**
     * Corresponds to the object which triggers the flow. Only one trigger is supported.
     */
    triggers: Array<ListTrigger | SegmentTrigger | MetricTrigger | ProfilePropertyDateTrigger | PriceDropTrigger | LowInventoryTrigger>;
    /**
     * Filters for users entering the flow. These filters are used on every action in the flow.
     */
    profile_filter?: {
        condition_groups: Array<{
            conditions: Array<ProfilePropertyCondition | ProfileHasGroupMembershipCondition | ProfileNoGroupMembershipCondition | ProfileRegionCondition | ProfilePostalCodeDistanceCondition | ProfilePredictiveAnalyticsDateCondition | ProfilePredictiveAnalyticsStringCondition | ProfilePredictiveAnalyticsNumericCondition | ProfileMarketingConsentCondition | FlowsProfileMetricCondition | ProfileRandomSampleCondition | ProfileHasCustomObjectCondition | ProfilePermissionsCondition | ProfileNotInFlowCondition>;
        }>;
    } | null;
    /**
     * A list of actions that make up the flow. Actions are linked to each other by their ids.
     */
    actions: Array<ActionOutputSplitAction | BackInStockDelayAction | ConditionalBranchAction | ContentExperimentAction | SendEmailAction | SendPushNotificationAction | SendSmsAction | SendWebhookAction | SendInternalAlertAction | SendWhatsAppAction | TimeDelayAction | TriggerBranchAction | UpdateProfileAction | TargetDateAction | CountdownDelayAction | AbTestAction | InternalServiceAction | CodeAction | MultiBranchSplitAction | ListUpdateAction>;
    /**
     * The ID of the action that is the entry point of the flow.
     */
    entry_action_id: string | null;
    reentry_criteria?: ReentryCriteria;
};
type FlowV2ResponseObjectResource = {
    type: FlowEnum;
    id: string;
    attributes: {
        name?: string | null;
        status?: string | null;
        archived?: boolean | null;
        created?: string | null;
        updated?: string | null;
        /**
         * Corresponds to the object which triggered the flow.
         */
        trigger_type?: 'Added to List' | 'Date Based' | 'Low Inventory' | 'Metric' | 'Price Drop' | 'Unconfigured';
    };
    links: ObjectLinks;
};
type GetFlowV2ResponseCompoundDocument = {
    data: FlowV2ResponseObjectResource & {
        relationships?: {
            'flow-actions'?: {
                data?: Array<{
                    type: FlowActionEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: FlowEnum;
        attributes?: {
            definition?: FlowDefinition;
        };
    };
    included?: Array<FlowActionEncodedResponseObjectResource | TagResponseObjectResource>;
    links?: ObjectLinks;
};
type GetFlowActionEncodedResponseCollection = {
    data: Array<FlowActionEncodedResponseObjectResource & {
        relationships?: {
            flow?: {
                links?: RelationshipLinks;
            };
            'flow-messages'?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetFlowFlowActionRelationshipListResponseCollection = {
    data: Array<{
        type: FlowActionEnum;
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetFlowTagsRelationshipsResponseCollection = {
    data: Array<{
        type: TagEnum;
        /**
         * The Tag ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type TemplateEnum = 'template';
type FlowMessageEncodedResponseObjectResource = {
    type: FlowMessageEnum;
    id: string;
    attributes: {
        channel?: string | null;
        created?: string | null;
        updated?: string | null;
        /**
         * The encoded flow message definition.
         */
        definition?: FlowEmail | FlowInternalAlert | FlowPushNotification | FlowSms | FlowWebhook | FlowWhatsApp | null;
    };
    links: ObjectLinks;
};
type GetFlowActionEncodedResponseCompoundDocument = {
    data: FlowActionEncodedResponseObjectResource & {
        relationships?: {
            flow?: {
                data?: {
                    type: FlowEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            'flow-messages'?: {
                data?: Array<{
                    type: FlowMessageEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<FlowResponseObjectResource | FlowMessageEncodedResponseObjectResource>;
    links?: ObjectLinks;
};
type GetFlowResponse = {
    data: FlowResponseObjectResource & {
        relationships?: {
            'flow-actions'?: {
                links?: RelationshipLinks;
            };
            tags?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetFlowActionFlowRelationshipResponse = {
    data: {
        type: FlowEnum;
        id: string;
    };
    links?: ObjectLinks;
};
type GetFlowMessageEncodedResponseCollection = {
    data: Array<FlowMessageEncodedResponseObjectResource & {
        relationships?: {
            'flow-action'?: {
                links?: RelationshipLinks;
            };
            template?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetFlowActionFlowMessageRelationshipResponseCollection = {
    data: Array<{
        type: FlowMessageEnum;
        id: string;
    }>;
    links?: CollectionLinks;
};
type TemplateResponseObjectResource = {
    type: TemplateEnum;
    /**
     * The ID of template
     */
    id: string;
    attributes: {
        /**
         * The name of the template
         */
        name: string;
        /**
         * `editor_type` has a fixed set of values:
         * * SYSTEM_DRAGGABLE: indicates a drag-and-drop editor template
         * * SIMPLE: A rich text editor template
         * * CODE: A custom HTML template
         * * USER_DRAGGABLE: A hybrid template, using custom HTML in the drag-and-drop editor
         */
        editor_type: string;
        /**
         * The rendered HTML of the template
         */
        html: string;
        /**
         * The template plain_text
         */
        text?: string | null;
        /**
         * The AMP version of the template. Requires AMP Email to be enabled to access in-app. Refer to the AMP Email setup guide at https://developers.klaviyo.com/en/docs/send_amp_emails_in_klaviyo
         */
        amp?: string | null;
        /**
         * The date the template was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created?: string | null;
        /**
         * The date the template was updated in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated?: string | null;
    };
    links: ObjectLinks;
};
type GetFlowMessageEncodedResponseCompoundDocument = {
    data: FlowMessageEncodedResponseObjectResource & {
        relationships?: {
            'flow-action'?: {
                data?: {
                    type: FlowActionEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            template?: {
                data?: {
                    type: TemplateEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<FlowActionEncodedResponseObjectResource | TemplateResponseObjectResource>;
    links?: ObjectLinks;
};
type GetFlowActionEncodedResponse = {
    data: FlowActionEncodedResponseObjectResource & {
        relationships?: {
            flow?: {
                links?: RelationshipLinks;
            };
            'flow-messages'?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetFlowMessageActionRelationshipResponse = {
    data: {
        type: FlowActionEnum;
        id: string;
    };
    links?: ObjectLinks;
};
type GetTemplateResponse = {
    data: TemplateResponseObjectResource;
    links?: ObjectLinks;
};
type GetFlowMessageTemplateRelationshipResponse = {
    data: {
        type: TemplateEnum;
        /**
         * The ID of template
         */
        id: string;
    };
    links?: ObjectLinks;
};
type Audiences = {
    /**
     * A list of included audiences
     */
    included: Array<string>;
    /**
     * An optional list of excluded audiences
     */
    excluded?: Array<string> | null;
};
type EmailSendOptions = {
    /**
     * Use smart sending.
     */
    use_smart_sending?: boolean | null;
};
type SmsSendOptions = {
    /**
     * Use smart sending.
     */
    use_smart_sending?: boolean | null;
};
type PushSendOptions = {
    /**
     * Use smart sending.
     */
    use_smart_sending?: boolean | null;
};
type DynamicEnum = 'dynamic';
type DynamicTrackingParam = {
    type: DynamicEnum;
    /**
     * The value of the tracking parameter
     */
    value: 'campaign_id' | 'campaign_name' | 'campaign_name_id' | 'campaign_name_send_day' | 'email_subject' | 'group_id' | 'group_name' | 'group_name_id' | 'link_alt_text' | 'message_type' | 'profile_external_id' | 'profile_id';
    /**
     * Name of the tracking param
     */
    name: string;
};
type StaticEnum = 'static';
type StaticTrackingParam = {
    type: StaticEnum;
    /**
     * The value of the tracking parameter
     */
    value: string;
    /**
     * Name of the tracking param
     */
    name: string;
};
type CampaignsEmailTrackingOptions = {
    /**
     * Whether the campaign needs custom tracking parameters. If set to False, tracking params will not be used.
     */
    add_tracking_params?: boolean | null;
    /**
     * A list of custom tracking parameters. If an empty list is given and add_tracking_params is True, uses company defaults.
     */
    custom_tracking_params?: Array<DynamicTrackingParam | StaticTrackingParam> | null;
    /**
     * Whether the campaign is tracking click events. If not specified, uses company defaults.
     */
    is_tracking_clicks?: boolean | null;
    /**
     * Whether the campaign is tracking open events. If not specified, uses company defaults.
     */
    is_tracking_opens?: boolean | null;
};
type CampaignsSmsTrackingOptions = {
    /**
     * Whether the campaign needs custom tracking parameters. If set to False, tracking params will not be used.
     */
    add_tracking_params?: boolean | null;
    /**
     * A list of custom tracking parameters. If an empty list is given and add_tracking_params is True, uses company defaults.
     */
    custom_tracking_params?: Array<DynamicTrackingParam | StaticTrackingParam> | null;
};
type LocalStaticSend = {
    /**
     * Whether the campaign should be sent with local recipient timezone send (requires UTC time) or statically sent at the given time.
     */
    is_local: true;
    /**
     * Determines if we should send to local recipient timezone if the given time has passed. Only applicable to local sends.
     */
    send_past_recipients_immediately?: boolean;
};
type NonLocalStaticSend = {
    /**
     * Whether the campaign should be sent with local recipient timezone send (requires UTC time) or statically sent at the given time.
     */
    is_local: false;
};
type StaticSendStrategy = {
    method: StaticEnum;
    /**
     * The time to send at
     */
    datetime: string;
    /**
     * If the campaign should be sent with local recipient timezone send (requires UTC time) or statically sent at the given time.
     */
    options?: LocalStaticSend | NonLocalStaticSend | null;
};
type SmartSendTimeEnum = 'smart_send_time';
type SmartSendTimeStrategy = {
    method: SmartSendTimeEnum;
    /**
     * The day to send on
     */
    date: string;
};
type ThrottledEnum = 'throttled';
type ThrottledSendStrategy = {
    method: ThrottledEnum;
    /**
     * The time to send at
     */
    datetime: string;
    /**
     * The percentage of recipients per hour to send to.
     */
    throttle_percentage: 10 | 11 | 13 | 14 | 17 | 20 | 25 | 33 | 50;
};
type ImmediateEnum = 'immediate';
type ImmediateSendStrategy = {
    method: ImmediateEnum;
};
type AbTestCampaignEnum = 'ab_test_campaign';
type AbTestSendStrategy = {
    method: AbTestCampaignEnum;
};
type UnsupportedEnum = 'unsupported';
type UnsupportedSendStrategy = {
    method: UnsupportedEnum;
};
type EmailContent = {
    /**
     * The subject of the message
     */
    subject?: string | null;
    /**
     * Preview text associated with the message
     */
    preview_text?: string | null;
    /**
     * The email the message should be sent from
     */
    from_email?: string | null;
    /**
     * The label associated with the from_email
     */
    from_label?: string | null;
    /**
     * Optional Reply-To email address
     */
    reply_to_email?: string | null;
    /**
     * Optional CC email address
     */
    cc_email?: string | null;
    /**
     * Optional BCC email address
     */
    bcc_email?: string | null;
};
type EmailMessageDefinition = {
    channel: EmailEnum;
    /**
     * The label or name on the message
     */
    label?: string | null;
    content?: EmailContent;
};
type SmsContent = {
    /**
     * The message body
     */
    body?: string | null;
    /**
     * URL for included media
     */
    media_url?: string | null;
};
type RenderOptions = {
    shorten_links?: boolean | null;
    add_org_prefix?: boolean | null;
    add_info_link?: boolean | null;
    add_opt_out_language?: boolean | null;
};
type SmsMessageDefinition = {
    channel: SmsEnum;
    content?: SmsContent;
    render_options?: RenderOptions;
};
type MobilePushEnum = 'mobile_push';
type StandardEnum = 'standard';
type MobilePushContent = {
    /**
     * The title of the message
     */
    title?: string | null;
    /**
     * The message body
     */
    body?: string | null;
    /**
     * The dynamic image to be used in the push notification
     */
    dynamic_image?: string | null;
};
type OpenAppEnum = 'open_app';
type PushOnOpenApp = {
    type: OpenAppEnum;
};
type DeepLinkEnum = 'deep_link';
type PushOnOpenDeepLink = {
    type: DeepLinkEnum;
    /**
     * required for all platforms enabled for push
     */
    ios_deep_link?: string | null;
    /**
     * required for all platforms enabled for push
     */
    android_deep_link?: string | null;
};
type CampaignMessageIncrement = {
    badge_config: 'increment_one';
};
type CampaignMessageStaticCount = {
    badge_config: 'set_count';
    value: string;
};
type CampaignMessageProperty = {
    badge_config: 'set_property';
    set_from_property: string;
};
type MobilePushBadge = {
    /**
     * Whether to display a badge on the app icon
     */
    display: true;
    /**
     * Badge options
     */
    badge_options?: CampaignMessageIncrement | CampaignMessageStaticCount | CampaignMessageProperty | null;
};
type MobilePushNoBadge = {
    /**
     * Whether to display a badge on the app icon
     */
    display: false;
};
type MobilePushOptions = {
    on_open?: PushOnOpenApp | PushOnOpenDeepLink | null;
    /**
     * Only supported on iOS.
     */
    badge?: MobilePushBadge | MobilePushNoBadge | null;
    /**
     * Only supported on iOS.
     */
    play_sound?: boolean | null;
};
type MobilePushMessageStandardDefinition = {
    channel: MobilePushEnum;
    notification_type: StandardEnum;
    content: MobilePushContent;
    /**
     * The key-value pairs to be sent with the push notification
     */
    kv_pairs?: {
        [key: string]: unknown;
    } | null;
    options?: MobilePushOptions;
};
type SilentEnum = 'silent';
type MobilePushMessageSilentDefinition = {
    channel: MobilePushEnum;
    notification_type: SilentEnum;
    /**
     * The key-value pairs to be sent with the push notification
     */
    kv_pairs?: {
        [key: string]: unknown;
    } | null;
};
type SendTime = {
    /**
     * The datetime that the message is to be sent
     */
    datetime: string;
    /**
     * Whether that datetime is to be a local datetime for the recipient
     */
    is_local: boolean;
};
type ImageEnum = 'image';
type CampaignMessageResponseObjectResource = {
    type: CampaignMessageEnum;
    /**
     * The message ID
     */
    id: string;
    attributes: {
        definition?: EmailMessageDefinition | SmsMessageDefinition | MobilePushMessageStandardDefinition | MobilePushMessageSilentDefinition | null;
        /**
         * The list of appropriate Send Time Sub-objects associated with the message
         */
        send_times?: Array<SendTime> | null;
        /**
         * The datetime when the message was created
         */
        created_at?: string | null;
        /**
         * The datetime when the message was last updated
         */
        updated_at?: string | null;
    };
    links: ObjectLinks;
};
type CampaignResponseObjectResource = {
    type: CampaignEnum;
    /**
     * The campaign ID
     */
    id: string;
    attributes: {
        /**
         * The campaign name
         */
        name: string;
        /**
         * The current status of the campaign
         */
        status: 'Adding Recipients' | 'Cancelled' | 'Cancelled: Account Disabled' | 'Cancelled: Internal Error' | 'Cancelled: No Recipients' | 'Cancelled: Smart Sending' | 'Draft' | 'Preparing to schedule' | 'Preparing to send' | 'Queued without Recipients' | 'Scheduled' | 'Sending' | 'Sending Segments' | 'Sent' | 'Unknown' | 'Variations Sent';
        /**
         * Whether the campaign has been archived or not
         */
        archived: boolean;
        audiences: Audiences;
        /**
         * Options to use when sending a campaign
         */
        send_options: EmailSendOptions | SmsSendOptions | PushSendOptions;
        /**
         * The tracking options associated with the campaign
         */
        tracking_options?: CampaignsEmailTrackingOptions | CampaignsSmsTrackingOptions | null;
        /**
         * The send strategy the campaign will send with
         */
        send_strategy: StaticSendStrategy | SmartSendTimeStrategy | ThrottledSendStrategy | ImmediateSendStrategy | AbTestSendStrategy | UnsupportedSendStrategy;
        /**
         * The datetime when the campaign was created
         */
        created_at: string;
        /**
         * The datetime when the campaign was scheduled for future sending
         */
        scheduled_at?: string | null;
        /**
         * The datetime when the campaign was last updated by a user or the system
         */
        updated_at: string;
        /**
         * The datetime when the campaign will be / was sent or None if not yet scheduled by a send_job.
         */
        send_time?: string | null;
    };
    links: ObjectLinks;
};
type GetCampaignResponseCollectionCompoundDocument = {
    data: Array<CampaignResponseObjectResource & {
        relationships?: {
            'campaign-messages'?: {
                data?: Array<{
                    type: CampaignMessageEnum;
                    /**
                     * The message(s) associated with the campaign
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<TagResponseObjectResource | CampaignMessageResponseObjectResource>;
};
type GetCampaignResponseCompoundDocument = {
    data: CampaignResponseObjectResource & {
        relationships?: {
            'campaign-messages'?: {
                data?: Array<{
                    type: CampaignMessageEnum;
                    /**
                     * The message(s) associated with the campaign
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<TagResponseObjectResource | CampaignMessageResponseObjectResource>;
    links?: ObjectLinks;
};
type ImageResponseObjectResource = {
    type: ImageEnum;
    /**
     * The ID of the image
     */
    id: string;
    attributes: {
        name: string;
        image_url: string;
        format: string;
        size: number;
        hidden: boolean;
        updated_at: string;
    };
    links: ObjectLinks;
};
type GetCampaignMessageResponseCompoundDocument = {
    data: CampaignMessageResponseObjectResource & {
        relationships?: {
            campaign?: {
                data?: {
                    type: CampaignEnum;
                    /**
                     * The parent campaign id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            template?: {
                data?: {
                    type: TemplateEnum;
                    /**
                     * The associated template id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            image?: {
                data?: {
                    type: ImageEnum;
                    /**
                     * The associated image id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<TemplateResponseObjectResource | CampaignResponseObjectResource | ImageResponseObjectResource>;
    links?: ObjectLinks;
};
type GetCampaignResponse = {
    data: CampaignResponseObjectResource & {
        relationships?: {
            'campaign-messages'?: {
                links?: RelationshipLinks;
            };
            tags?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetCampaignMessageCampaignRelationshipResponse = {
    data: {
        type: CampaignEnum;
        /**
         * The campaign ID
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetCampaignMessageTemplateRelationshipResponse = {
    data: {
        type: TemplateEnum;
        /**
         * The ID of template
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetImageResponse = {
    data: ImageResponseObjectResource;
    links?: ObjectLinks;
};
type GetCampaignMessageImageRelationshipResponse = {
    data: {
        type: ImageEnum;
        /**
         * The ID of the image
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetCampaignTagsRelationshipsResponseCollection = {
    data: Array<{
        type: TagEnum;
        /**
         * The Tag ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetCampaignMessageResponseCollectionCompoundDocument = {
    data: Array<CampaignMessageResponseObjectResource & {
        relationships?: {
            campaign?: {
                data?: {
                    type: CampaignEnum;
                    /**
                     * The parent campaign id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            template?: {
                data?: {
                    type: TemplateEnum;
                    /**
                     * The associated template id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            image?: {
                data?: {
                    type: ImageEnum;
                    /**
                     * The associated image id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<TemplateResponseObjectResource | CampaignResponseObjectResource | ImageResponseObjectResource>;
};
type GetCampaignMessagesRelationshipsResponseCollection = {
    data: Array<{
        type: CampaignMessageEnum;
        /**
         * The message ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type CampaignSendJobEnum = 'campaign-send-job';
type CampaignSendJobResponseObjectResource = {
    type: CampaignSendJobEnum;
    /**
     * The ID of the campaign to send
     */
    id: string;
    attributes: {
        /**
         * The status of the send job
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
    };
    links: ObjectLinks;
};
type GetCampaignSendJobResponse = {
    data: CampaignSendJobResponseObjectResource;
    links?: ObjectLinks;
};
type CampaignRecipientEstimationJobEnum = 'campaign-recipient-estimation-job';
type CampaignRecipientEstimationJobResponseObjectResource = {
    type: CampaignRecipientEstimationJobEnum;
    /**
     * The ID of the campaign used for estimating recipients
     */
    id: string;
    attributes: {
        /**
         * The status of the recipient estimation job
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
    };
    links: ObjectLinks;
};
type GetCampaignRecipientEstimationJobResponse = {
    data: CampaignRecipientEstimationJobResponseObjectResource;
    links?: ObjectLinks;
};
type CampaignRecipientEstimationEnum = 'campaign-recipient-estimation';
type CampaignRecipientEstimationResponseObjectResource = {
    type: CampaignRecipientEstimationEnum;
    /**
     * The ID of the campaign for which to get the estimated number of recipients
     */
    id: string;
    attributes: {
        /**
         * The estimated number of unique recipients the campaign will send to
         */
        estimated_recipient_count: number;
    };
    links: ObjectLinks;
};
type GetCampaignRecipientEstimationResponse = {
    data: CampaignRecipientEstimationResponseObjectResource;
    links?: ObjectLinks;
};
type GetTemplateResponseCollection = {
    data: Array<TemplateResponseObjectResource>;
    links?: CollectionLinks;
};
type CatalogItemBulkCreateJobEnum = 'catalog-item-bulk-create-job';
type CatalogItemCreateJobResponseObjectResource = {
    type: CatalogItemBulkCreateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogItemCreateJobResponseCollectionCompoundDocument = {
    data: Array<CatalogItemCreateJobResponseObjectResource & {
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the created catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogItemCreateJobResponseCompoundDocument = {
    data: CatalogItemCreateJobResponseObjectResource & {
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the created catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogItemResponseObjectResource>;
    links?: ObjectLinks;
};
type CatalogItemBulkUpdateJobEnum = 'catalog-item-bulk-update-job';
type CatalogItemUpdateJobResponseObjectResource = {
    type: CatalogItemBulkUpdateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogItemUpdateJobResponseCollectionCompoundDocument = {
    data: Array<CatalogItemUpdateJobResponseObjectResource & {
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the updated catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogItemUpdateJobResponseCompoundDocument = {
    data: CatalogItemUpdateJobResponseObjectResource & {
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the updated catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogItemResponseObjectResource>;
    links?: ObjectLinks;
};
type CatalogItemBulkDeleteJobEnum = 'catalog-item-bulk-delete-job';
type CatalogItemDeleteJobResponseObjectResource = {
    type: CatalogItemBulkDeleteJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogItemDeleteJobResponseCollection = {
    data: Array<CatalogItemDeleteJobResponseObjectResource & {
        relationships?: {
            items?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogItemDeleteJobResponse = {
    data: CatalogItemDeleteJobResponseObjectResource & {
        relationships?: {
            items?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type CatalogVariantBulkCreateJobEnum = 'catalog-variant-bulk-create-job';
type CatalogVariantCreateJobResponseObjectResource = {
    type: CatalogVariantBulkCreateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogVariantCreateJobResponseCollectionCompoundDocument = {
    data: Array<CatalogVariantCreateJobResponseObjectResource & {
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the created catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogVariantCreateJobResponseCompoundDocument = {
    data: CatalogVariantCreateJobResponseObjectResource & {
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the created catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogVariantResponseObjectResource>;
    links?: ObjectLinks;
};
type CatalogVariantBulkUpdateJobEnum = 'catalog-variant-bulk-update-job';
type CatalogVariantUpdateJobResponseObjectResource = {
    type: CatalogVariantBulkUpdateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogVariantUpdateJobResponseCollectionCompoundDocument = {
    data: Array<CatalogVariantUpdateJobResponseObjectResource & {
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the updated catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogVariantUpdateJobResponseCompoundDocument = {
    data: CatalogVariantUpdateJobResponseObjectResource & {
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the updated catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogVariantResponseObjectResource>;
    links?: ObjectLinks;
};
type CatalogVariantBulkDeleteJobEnum = 'catalog-variant-bulk-delete-job';
type CatalogVariantDeleteJobResponseObjectResource = {
    type: CatalogVariantBulkDeleteJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogVariantDeleteJobResponseCollection = {
    data: Array<CatalogVariantDeleteJobResponseObjectResource & {
        relationships?: {
            variants?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogVariantDeleteJobResponse = {
    data: CatalogVariantDeleteJobResponseObjectResource & {
        relationships?: {
            variants?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type CatalogCategoryBulkCreateJobEnum = 'catalog-category-bulk-create-job';
type CatalogCategoryCreateJobResponseObjectResource = {
    type: CatalogCategoryBulkCreateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogCategoryCreateJobResponseCollectionCompoundDocument = {
    data: Array<CatalogCategoryCreateJobResponseObjectResource & {
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the created catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogCategoryCreateJobResponseCompoundDocument = {
    data: CatalogCategoryCreateJobResponseObjectResource & {
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the created catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogCategoryResponseObjectResource>;
    links?: ObjectLinks;
};
type CatalogCategoryBulkUpdateJobEnum = 'catalog-category-bulk-update-job';
type CatalogCategoryUpdateJobResponseObjectResource = {
    type: CatalogCategoryBulkUpdateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument = {
    data: Array<CatalogCategoryUpdateJobResponseObjectResource & {
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the updated catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogCategoryUpdateJobResponseCompoundDocument = {
    data: CatalogCategoryUpdateJobResponseObjectResource & {
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the updated catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<CatalogCategoryResponseObjectResource>;
    links?: ObjectLinks;
};
type CatalogCategoryBulkDeleteJobEnum = 'catalog-category-bulk-delete-job';
type CatalogCategoryDeleteJobResponseObjectResource = {
    type: CatalogCategoryBulkDeleteJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * The total number of operations that have failed as part of the job.
         */
        failed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * Array of errors encountered during the processing of the job.
         */
        errors?: Array<ApiJobErrorPayload> | null;
        /**
         * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        expires_at?: string | null;
    };
    links: ObjectLinks;
};
type GetCatalogCategoryDeleteJobResponseCollection = {
    data: Array<CatalogCategoryDeleteJobResponseObjectResource & {
        relationships?: {
            categories?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCatalogCategoryDeleteJobResponse = {
    data: CatalogCategoryDeleteJobResponseObjectResource & {
        relationships?: {
            categories?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type TagGroupResponseObjectResource = {
    type: TagGroupEnum;
    /**
     * The Tag Group ID
     */
    id: string;
    attributes: {
        /**
         * The Tag Group name
         */
        name: string;
        /**
         * If a tag group is non-exclusive, any given related resource (campaign, flow, etc.) can be linked to multiple tags from that tag group. If a tag group is exclusive, any given related resource can only be linked to one tag from that tag group.
         */
        exclusive: boolean;
        /**
         * Every company automatically has one Default Tag Group. The Default Tag Group cannot be deleted, and no other Default Tag Groups can be created. This value is true for the Default Tag Group and false for all other Tag Groups.
         */
        default: boolean;
    };
    links: ObjectLinks;
};
type GetTagResponseCollectionCompoundDocument = {
    data: Array<TagResponseObjectResource & {
        relationships?: {
            'tag-group'?: {
                data?: {
                    type: TagGroupEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            campaigns?: {
                links?: RelationshipLinks;
            };
            flows?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<TagGroupResponseObjectResource>;
};
type GetTagResponseCompoundDocument = {
    data: TagResponseObjectResource & {
        relationships?: {
            'tag-group'?: {
                data?: {
                    type: TagGroupEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
            campaigns?: {
                links?: RelationshipLinks;
            };
            flows?: {
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<TagGroupResponseObjectResource>;
    links?: ObjectLinks;
};
type GetTagGroupResponseCollection = {
    data: Array<TagGroupResponseObjectResource & {
        relationships?: {
            tags?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetTagGroupResponse = {
    data: TagGroupResponseObjectResource & {
        relationships?: {
            tags?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetTagFlowRelationshipsResponseCollection = {
    data: Array<{
        type: FlowEnum;
        /**
         * The IDs of all flows that are associated with the Tag
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetTagCampaignRelationshipsResponseCollection = {
    data: Array<{
        type: CampaignEnum;
        /**
         * The IDs of all campaigns that are associated with the Tag
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetTagListRelationshipsResponseCollection = {
    data: Array<{
        type: ListEnum;
        /**
         * The IDs of all lists that are associated with the Tag
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetTagSegmentRelationshipsResponseCollection = {
    data: Array<{
        type: SegmentEnum;
        /**
         * The IDs of all segments that are associated with the Tag
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetTagGroupRelationshipResponse = {
    data: {
        type: TagGroupEnum;
        /**
         * The Tag Group ID
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetTagGroupTagsRelationshipsResponseCollection = {
    data: Array<{
        type: TagEnum;
        /**
         * The Tag ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type WebhookEnum = 'webhook';
type WebhookTopicEnum = 'webhook-topic';
type WebhookTopicResponseObjectResource = {
    type: WebhookTopicEnum;
    /**
     * The ID of the webhook topic.
     */
    id: string;
    links: ObjectLinks;
};
type WebhookResponseObjectResource = {
    type: WebhookEnum;
    /**
     * The ID of the webhook.
     */
    id: string;
    attributes: {
        /**
         * A name for the webhook.
         */
        name: string;
        /**
         * A description for the webhook.
         */
        description?: string | null;
        /**
         * The url to send webhook requests to, truncated for security.
         */
        endpoint_url: string;
        /**
         * Is the webhook enabled.
         */
        enabled: boolean;
        /**
         * Date and time when the webhook was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created_at?: string | null;
        /**
         * Date and time when the webhook was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated_at?: string | null;
    };
    links: ObjectLinks;
};
type GetWebhookResponseCollectionCompoundDocument = {
    data: Array<WebhookResponseObjectResource & {
        relationships?: {
            'webhook-topics'?: {
                data?: Array<{
                    type: WebhookTopicEnum;
                    /**
                     * A topic the webhook is subscribed to.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<WebhookTopicResponseObjectResource>;
};
type GetWebhookResponseCompoundDocument = {
    data: WebhookResponseObjectResource & {
        relationships?: {
            'webhook-topics'?: {
                data?: Array<{
                    type: WebhookTopicEnum;
                    /**
                     * A topic the webhook is subscribed to.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<WebhookTopicResponseObjectResource>;
    links?: ObjectLinks;
};
type GetWebhookTopicResponseCollection = {
    data: Array<WebhookTopicResponseObjectResource>;
    links?: CollectionLinks;
};
type GetWebhookTopicResponse = {
    data: WebhookTopicResponseObjectResource;
    links?: ObjectLinks;
};
type ProfileSuppressionBulkCreateJobEnum = 'profile-suppression-bulk-create-job';
type BulkProfileSuppressionsCreateJobResponseObjectResource = {
    type: ProfileSuppressionBulkCreateJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * The total number of profiles that have been skipped as part of the job.
         */
        skipped_count?: number | null;
    };
    links: ObjectLinks;
};
type GetBulkProfileSuppressionsCreateJobResponseCollection = {
    data: Array<BulkProfileSuppressionsCreateJobResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetBulkProfileSuppressionsCreateJobResponse = {
    data: BulkProfileSuppressionsCreateJobResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type ProfileSuppressionBulkDeleteJobEnum = 'profile-suppression-bulk-delete-job';
type BulkProfileSuppressionsRemoveJobResponseObjectResource = {
    type: ProfileSuppressionBulkDeleteJobEnum;
    /**
     * Unique identifier for retrieving the job. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Status of the asynchronous job.
         */
        status: 'cancelled' | 'complete' | 'processing' | 'queued';
        /**
         * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        created_at: string;
        /**
         * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
         */
        total_count: number;
        /**
         * The total number of operations that have been completed by the job.
         */
        completed_count?: number | null;
        /**
         * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         */
        completed_at?: string | null;
        /**
         * The total number of profiles that have been skipped as part of the job.
         */
        skipped_count?: number | null;
    };
    links: ObjectLinks;
};
type GetBulkProfileSuppressionsRemoveJobResponseCollection = {
    data: Array<BulkProfileSuppressionsRemoveJobResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetBulkProfileSuppressionsRemoveJobResponse = {
    data: BulkProfileSuppressionsRemoveJobResponseObjectResource & {
        relationships?: {
            lists?: {
                links?: RelationshipLinks;
            };
            segments?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type StreetAddress = {
    address1?: string | null;
    address2?: string | null;
    city: string;
    /**
     * State, province, or region.
     */
    region?: string | null;
    /**
     * Two-letter [ISO country code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)
     */
    country?: string | null;
    zip?: string | null;
};
type ContactInformation = {
    /**
     * This field is used to auto-populate the default sender name on flow and campaign emails.
     */
    default_sender_name: string;
    /**
     * This field is used to auto-populate the default sender email address on flow and campaign emails.
     */
    default_sender_email: string;
    website_url?: string | null;
    organization_name: string;
    street_address: StreetAddress;
};
type AccountEnum = 'account';
type AccountResponseObjectResource = {
    type: AccountEnum;
    id: string;
    attributes: {
        /**
         * Indicates if the account is a test account. Test accounts are not a separate testing engineering environment. Test accounts use the same production environment as normal Klaviyo accounts. This feature is primarily UI based to reduce human errors
         */
        test_account: boolean;
        contact_information: ContactInformation;
        /**
         * The kind of business and/or types of goods that the business sells. This is leveraged in Klaviyo analytics and guidance.
         */
        industry?: string | null;
        /**
         * The account's timezone is used when displaying dates and times. This is an IANA timezone. See [the full list here ](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
         */
        timezone: string;
        /**
         * The preferred currency for the account. This is the currency used for currency-based metrics in dashboards, analytics, coupons, and templates.
         */
        preferred_currency: string;
        /**
         * The Public API Key can be used for client-side API calls. [More info here](https://developers.klaviyo.com/en/docs/retrieve_api_credentials).
         */
        public_api_key: string;
        /**
         * The account's locale is used to determine the region and language for the account.
         */
        locale: string;
    };
    links: ObjectLinks;
};
type GetAccountResponseCollection = {
    data: Array<AccountResponseObjectResource>;
    links?: CollectionLinks;
};
type GetAccountResponse = {
    data: AccountResponseObjectResource;
    links?: ObjectLinks;
};
type GetPushTokenResponseCollectionCompoundDocument = {
    data: Array<PushTokenResponseObjectResource & {
        relationships?: {
            profile?: {
                data?: {
                    type: ProfileEnum;
                    /**
                     * The profile associated with the push token
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<ProfileResponseObjectResource>;
};
type GetPushTokenResponseCompoundDocument = {
    data: PushTokenResponseObjectResource & {
        relationships?: {
            profile?: {
                data?: {
                    type: ProfileEnum;
                    /**
                     * The profile associated with the push token
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<ProfileResponseObjectResource>;
    links?: ObjectLinks;
};
type GetPushTokenProfileRelationshipResponse = {
    data: {
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetImageResponseCollection = {
    data: Array<ImageResponseObjectResource>;
    links?: CollectionLinks;
};
type BlockEnum = 'block';
type ButtonEnum = 'button';
type ButtonBlock = {
    content_type: BlockEnum;
    type: ButtonEnum;
    data: unknown;
};
type CouponBlock = {
    content_type: BlockEnum;
    type: CouponEnum;
    data: number | number | string | boolean | null;
};
type DropShadowEnum = 'drop_shadow';
type DropShadowBlock = {
    content_type: BlockEnum;
    type: DropShadowEnum;
    data: unknown;
};
type HeaderEnum = 'header';
type HeaderBlock = {
    content_type: BlockEnum;
    type: HeaderEnum;
    data: number | number | string | boolean | null;
};
type HorizontalRuleEnum = 'horizontal_rule';
type HorizontalRuleBlock = {
    content_type: BlockEnum;
    type: HorizontalRuleEnum;
    data: unknown;
};
type HtmlEnum = 'html';
type ContentRepeat = {
    repeat_for: string;
    item_alias: string;
};
type BlockDisplayOptions = {
    /**
     * Show on.
     */
    show_on?: 'all' | 'desktop' | 'mobile';
    visible_check?: string | null;
    content_repeat?: ContentRepeat;
};
type HtmlBlockData = {
    content: string;
    display_options: BlockDisplayOptions;
};
type HtmlBlock = {
    content_type: BlockEnum;
    type: HtmlEnum;
    data: HtmlBlockData;
};
type ImageBlock = {
    content_type: BlockEnum;
    type: ImageEnum;
    data: unknown;
};
type ProductEnum = 'product';
type ProductBlock = {
    content_type: BlockEnum;
    type: ProductEnum;
    data: number | number | string | boolean | null;
};
type ReviewEnum = 'review';
type ReviewBlock = {
    content_type: BlockEnum;
    type: ReviewEnum;
    data: number | number | string | boolean | null;
};
type SocialEnum = 'social';
type SocialBlock = {
    content_type: BlockEnum;
    type: SocialEnum;
    data: number | number | string | boolean | null;
};
type SpacerEnum = 'spacer';
type SpacerBlock = {
    content_type: BlockEnum;
    type: SpacerEnum;
    data: unknown;
};
type SplitEnum = 'split';
type SplitBlock = {
    content_type: BlockEnum;
    type: SplitEnum;
    data: number | number | string | boolean | null;
};
type TableEnum = 'table';
type TableBlock = {
    content_type: BlockEnum;
    type: TableEnum;
    data: number | number | string | boolean | null;
};
type TextEnum = 'text';
type TextBlockStyles = {
    background_color?: string | null;
    block_background_color?: string | null;
    block_border_color?: string | null;
    /**
     * Border style.
     */
    block_border_style?: 'dashed' | 'dotted' | 'groove' | 'inset' | 'none' | 'outset' | 'ridge' | 'solid';
    block_border_width?: number | null;
    block_padding_bottom?: number | null;
    block_padding_left?: number | null;
    block_padding_right?: number | null;
    block_padding_top?: number | null;
    color?: string | null;
    extra_css_class?: string | null;
    font_family?: string | null;
    font_size?: number | null;
    /**
     * Font style.
     */
    font_style?: 'italic' | 'normal';
    font_weight?: string | null;
    inner_padding_bottom?: number | null;
    inner_padding_left?: number | null;
    inner_padding_right?: number | null;
    inner_padding_top?: number | null;
    letter_spacing?: number | null;
    line_height?: number | null;
    mobile_stretch_content?: boolean | null;
    /**
     * Text Alignment.
     */
    text_align?: 'center' | 'left' | 'right';
    text_decoration?: string | null;
    /**
     * Text table layout.
     */
    text_table_layout?: 'auto' | 'fixed' | 'inherit' | 'initial';
};
type TextBlockData = {
    content: string;
    display_options: BlockDisplayOptions;
    styles: TextBlockStyles;
};
type TextBlock = {
    content_type: BlockEnum;
    type: TextEnum;
    data: TextBlockData;
};
type UnsupportedBlock = {
    content_type: BlockEnum;
    type: UnsupportedEnum;
    data: number | number | string | boolean | null;
};
type VideoEnum = 'video';
type VideoBlock = {
    content_type: BlockEnum;
    type: VideoEnum;
    data: number | number | string | boolean | null;
};
type SectionEnum = 'section';
type Section = {
    content_type: SectionEnum;
    type: SectionEnum;
    data: number | number | string | boolean | null;
};
type TemplateUniversalContentEnum = 'template-universal-content';
type UniversalContentResponseObjectResource = {
    type: TemplateUniversalContentEnum;
    /**
     * The ID of the universal content
     */
    id: string;
    attributes: {
        /**
         * The name for this universal content
         */
        name: string;
        definition?: ButtonBlock | CouponBlock | DropShadowBlock | HeaderBlock | HorizontalRuleBlock | HtmlBlock | ImageBlock | ProductBlock | ReviewBlock | SocialBlock | SpacerBlock | SplitBlock | TableBlock | TextBlock | UnsupportedBlock | VideoBlock | Section | null;
        /**
         * The datetime when this universal content was created
         */
        created: string;
        /**
         * The datetime when this universal content was updated
         */
        updated: string;
        /**
         * The status of a universal content screenshot.
         */
        screenshot_status: 'completed' | 'failed' | 'generating' | 'never_generated' | 'not_renderable' | 'stale';
        screenshot_url: string;
    };
    links: ObjectLinks;
};
type GetUniversalContentResponseCollection = {
    data: Array<UniversalContentResponseObjectResource>;
    links?: CollectionLinks;
};
type GetUniversalContentResponse = {
    data: UniversalContentResponseObjectResource;
    links?: ObjectLinks;
};
type RejectedEnum = 'rejected';
type OtherEnum = 'other';
type RejectReasonOther = {
    reason: OtherEnum;
    /**
     * If review reject reason is other, we can provide further explanation
     */
    status_explanation?: string | null;
};
type FakeEnum = 'fake';
type RejectReasonFake = {
    reason: FakeEnum;
};
type FalseOrMisleadingEnum = 'false_or_misleading';
type RejectReasonMisleading = {
    reason: FalseOrMisleadingEnum;
};
type PrivateInformationEnum = 'private_information';
type RejectReasonPrivateInformation = {
    reason: PrivateInformationEnum;
};
type ProfanityOrInappropriateEnum = 'profanity_or_inappropriate';
type RejectReasonProfanity = {
    reason: ProfanityOrInappropriateEnum;
};
type UnrelatedEnum = 'unrelated';
type RejectReasonUnrelated = {
    reason: UnrelatedEnum;
};
type ReviewStatusRejected = {
    value: RejectedEnum;
    /**
     * The updated status intended for the review with this ID
     */
    rejection_reason: RejectReasonOther | RejectReasonFake | RejectReasonMisleading | RejectReasonPrivateInformation | RejectReasonProfanity | RejectReasonUnrelated;
};
type FeaturedEnum = 'featured';
type ReviewStatusFeatured = {
    value: FeaturedEnum;
};
type PublishedEnum = 'published';
type ReviewStatusPublished = {
    value: PublishedEnum;
};
type UnpublishedEnum = 'unpublished';
type ReviewStatusUnpublished = {
    value: UnpublishedEnum;
};
type PendingEnum = 'pending';
type ReviewStatusPending = {
    value: PendingEnum;
};
type ReviewProductDto = {
    /**
     * The URL of the product
     */
    url: string;
    /**
     * The name of the product
     */
    name: string;
    /**
     * The URL of the product image
     */
    image_url?: string | null;
    /**
     * The external ID of the product
     */
    external_id?: string | null;
};
type ReviewPublicReply = {
    /**
     * The content of the public reply
     */
    content: string;
    /**
     * The author of the public reply
     */
    author: string;
    /**
     * The datetime when this public reply was updated
     */
    updated: string;
};
type ReviewResponseDtoObjectResource = {
    type: ReviewEnum;
    /**
     * The ID of the review
     */
    id: string;
    attributes: {
        /**
         * The email of the author of this review
         */
        email?: string | null;
        /**
         * The status of this review
         */
        status?: ReviewStatusRejected | ReviewStatusFeatured | ReviewStatusPublished | ReviewStatusUnpublished | ReviewStatusPending | null;
        /**
         * The verification status of this review (aka whether or not we have confirmation that the customer bought the product)
         */
        verified: boolean;
        /**
         * The type of this review — either a review, question, or rating
         */
        review_type: 'question' | 'rating' | 'review' | 'store';
        /**
         * The datetime when this review was created
         */
        created: string;
        /**
         * The datetime when this review was updated
         */
        updated: string;
        /**
         * The list of images submitted with this review (represented as a list of urls). If there are no images, this field will be an empty list.
         */
        images: Array<string>;
        product?: ReviewProductDto;
        /**
         * The rating of this review on a scale from 1-5. If the review type is "question", this field will be null.
         */
        rating?: number | null;
        /**
         * The author of this review
         */
        author?: string | null;
        /**
         * The content of this review
         */
        content?: string | null;
        /**
         * The title of this review
         */
        title?: string | null;
        /**
         * A quote from this review that summarizes the content
         */
        smart_quote?: string | null;
        public_reply?: ReviewPublicReply;
    };
    links: ObjectLinks;
};
type GetReviewResponseDtoCollectionCompoundDocument = {
    data: Array<ReviewResponseDtoObjectResource & {
        relationships?: {
            events?: {
                data?: Array<{
                    type: EventEnum;
                    /**
                     * Related Events
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            item?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<EventResponseObjectResource>;
};
type GetReviewResponseDtoCompoundDocument = {
    data: ReviewResponseDtoObjectResource & {
        relationships?: {
            events?: {
                data?: Array<{
                    type: EventEnum;
                    /**
                     * Related Events
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            item?: {
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<EventResponseObjectResource>;
    links?: ObjectLinks;
};
type FormResponseObjectResource = {
    type: FormEnum;
    /**
     * ID of the form. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Name of the form.
         */
        name: string;
        /**
         * Status of the form. A live form with an in-progress draft is considered "live".
         */
        status: 'draft' | 'live';
        /**
         * Whether the form has an A/B test configured, regardless of its status.
         */
        ab_test: boolean;
        /**
         * ISO8601 timestamp when the form was created.
         */
        created_at: string;
        /**
         * ISO8601 timestamp when the form was last updated.
         */
        updated_at: string;
    };
    links: ObjectLinks;
};
type GetFormResponseCollection = {
    data: Array<FormResponseObjectResource & {
        relationships?: {
            'form-versions'?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type Padding = {
    left?: number;
    right?: number;
    top?: number;
    bottom?: number;
};
type BorderStyle = {
    radius?: number;
    color?: string | null;
    /**
     * Border pattern enumeration.
     */
    style?: 'dashed' | 'dotted' | 'solid';
    thickness?: number | null;
};
type TextStyle = {
    font_family?: 'Arial Black,Arial' | 'Arial, \'Helvetica Neue\', Helvetica, sans-serif' | 'Century Gothic,AppleGothic,Arial' | 'Comic Sans MS,Comic Sans,cursive' | 'Courier' | 'Courier New' | 'Geneva,Arial' | 'Georgia' | 'Helvetica,Arial' | 'Lucida Grande,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'MS Serif,Georgia' | 'New York,Georgia' | 'Palatino Linotype,Palatino,Georgia' | 'Palatino,Georgia' | 'Tahoma,sans-serif' | 'Times New Roman' | 'Trebuchet MS' | 'Verdana' | string;
    font_size?: number;
    /**
     * Font weight enumeration.
     */
    font_weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
    text_color?: string;
    character_spacing?: number | null;
};
type ButtonDropShadowStyles = {
    enabled?: boolean;
    color?: string;
    blur?: number;
    x_offset?: number;
    y_offset?: number;
};
type ButtonStyles = {
    padding?: Padding;
    background_color?: string | null;
    /**
     * Valid button block widths.
     */
    width?: 'fill' | 'fit';
    height?: number;
    hover_background_color?: string | null;
    hover_text_color?: string | null;
    border_styles?: BorderStyle;
    text_styles?: TextStyle;
    color?: string | null;
    drop_shadow?: ButtonDropShadowStyles;
};
type AdditionalField = {
    name: string;
    value: string;
};
type ButtonProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    label: string;
    additional_fields?: Array<AdditionalField> | null;
};
type CloseEnum = 'close';
type CloseProperties = {
    list_id?: string | null;
};
type Close = {
    id?: string | null;
    submit: boolean;
    type: CloseEnum;
    properties?: CloseProperties;
};
type NextStepEnum = 'next_step';
type NextStepProperties = {
    list_id?: string | null;
};
type NextStep = {
    id?: string | null;
    submit: boolean;
    type: NextStepEnum;
    properties?: NextStepProperties;
};
type OpenFormEnum = 'open_form';
type OpenFormProperties = {
    close_form?: boolean;
    form_id_to_open: string;
};
type OpenForm = {
    id?: string | null;
    type: OpenFormEnum;
    submit?: true;
    properties: OpenFormProperties;
};
type PromotionalSmsSubscriptionEnum = 'promotional_sms_subscription';
type PromotionalSmsSubscription = {
    id?: string | null;
    submit?: true;
    type: PromotionalSmsSubscriptionEnum;
    properties?: unknown;
};
type RedirectEnum = 'redirect';
type RedirectProperties = {
    list_id?: string | null;
    url: string;
    new_window?: boolean;
};
type Redirect = {
    id?: string | null;
    submit: boolean;
    type: RedirectEnum;
    properties: RedirectProperties;
};
type ResendOptInCodeEnum = 'resend_opt_in_code';
type ResendOptInCode = {
    id?: string | null;
    submit?: false;
    type: ResendOptInCodeEnum;
    properties?: unknown;
};
type SubmitOptInCodeEnum = 'submit_opt_in_code';
type SubmitOptInCode = {
    id?: string | null;
    submit?: true;
    type: SubmitOptInCodeEnum;
    properties?: unknown;
};
type SubscribeViaSmsEnum = 'subscribe_via_sms';
type SubscribeViaSmsProperties = {
    opt_in_keyword: string | null;
    opt_in_message: string;
    sending_number: string | null;
};
type SubscribeViaSms = {
    id?: string | null;
    submit?: true;
    type: SubscribeViaSmsEnum;
    properties: SubscribeViaSmsProperties;
};
type SubscribeViaWhatsappEnum = 'subscribe_via_whatsapp';
type SubscribeViaWhatsAppProperties = {
    opt_in_keyword: string | null;
    opt_in_message: string;
    sending_number: string | null;
};
type SubscribeViaWhatsApp = {
    id?: string | null;
    submit?: true;
    type: SubscribeViaWhatsappEnum;
    properties: SubscribeViaWhatsAppProperties;
};
type GoToInboxEnum = 'go_to_inbox';
type GoToInbox = {
    id?: string | null;
    submit?: true;
    type: GoToInboxEnum;
    properties?: unknown;
};
type SubmitBackInStockEnum = 'submit_back_in_stock';
type SubmitBackInStockProperties = {
    list_id?: string | null;
};
type SubmitBackInStock = {
    id?: string | null;
    type: SubmitBackInStockEnum;
    properties?: SubmitBackInStockProperties;
    submit?: true;
};
type SkipToSuccessEnum = 'skip_to_success';
type SkipToSuccessProperties = {
    [key: string]: unknown;
};
type SkipToSuccess = {
    id?: string | null;
    type: SkipToSuccessEnum;
    submit?: false;
    properties: SkipToSuccessProperties;
};
type Button = {
    id?: string | null;
    type: ButtonEnum;
    styles?: ButtonStyles;
    properties: ButtonProperties;
    action?: Close | NextStep | OpenForm | PromotionalSmsSubscription | Redirect | ResendOptInCode | SubmitOptInCode | SubscribeViaSms | SubscribeViaWhatsApp | GoToInbox | SubmitBackInStock | SkipToSuccess;
};
type AgeGateEnum = 'age_gate';
type AgeGateStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type ErrorMessages = {
    required?: string;
    invalid?: string;
};
type DollarSignAgeGatedDateOfBirthEnum = '$age_gated_date_of_birth';
type AgeGateProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    label?: string | null;
    show_label?: boolean;
    placeholder?: string | null;
    error_messages?: ErrorMessages;
    property_name?: DollarSignAgeGatedDateOfBirthEnum;
    date_format?: string;
    /**
     * SMS County Code Enum.
     */
    sms_country_code?: 'AT' | 'AU' | 'CH' | 'DE' | 'ES' | 'FR' | 'GB' | 'IE' | 'IT' | 'PT' | 'US';
    required?: true;
};
type AgeGate = {
    id?: string | null;
    type: AgeGateEnum;
    styles?: AgeGateStyles;
    properties: AgeGateProperties;
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
};
type CouponStyles = {
    padding?: Padding;
    background_color?: string | null;
    text_styles?: TextStyle;
    border_styles?: BorderStyle;
    coupon_background_color?: string | null;
};
type UniqueEnum = 'unique';
type UniqueCouponConfig = {
    type: UniqueEnum;
    id?: number | null;
    code?: string | null;
    fallback_coupon_code?: string | null;
    /**
     * Coupon integration types for unique coupon blocks.
     */
    integration?: 'api' | 'magento_two' | 'prestashop' | 'shopify' | 'uploaded' | 'woocommerce';
};
type StaticCouponConfig = {
    type: StaticEnum;
    text?: string | null;
};
type CouponProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    coupon: UniqueCouponConfig | StaticCouponConfig;
    success_message?: string | null;
};
type Coupon = {
    id?: string | null;
    type: CouponEnum;
    styles?: CouponStyles;
    properties: CouponProperties;
};
type DateStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type DateProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    property_name: string;
    label?: string | null;
    show_label?: boolean;
    placeholder?: string | null;
    required?: boolean | null;
    error_messages?: ErrorMessages;
    date_format?: string;
};
type Date = {
    id?: string | null;
    type: DateEnum;
    styles?: DateStyles;
    properties: DateProperties;
};
type EmailStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type DollarSignEmailEnum = '$email';
type EmailProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    label?: string | null;
    show_label?: boolean;
    placeholder?: string | null;
    required?: boolean | null;
    error_messages?: ErrorMessages;
    property_name?: DollarSignEmailEnum;
};
type Email = {
    id?: string | null;
    type: EmailEnum;
    styles?: EmailStyles;
    properties: EmailProperties;
};
type HtmlTextEnum = 'html_text';
type HtmlTextStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type HtmlTextProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    content?: string;
};
type HtmlText = {
    id?: string | null;
    type: HtmlTextEnum;
    styles?: HtmlTextStyles;
    properties?: HtmlTextProperties;
};
type OptInCodeEnum = 'opt_in_code';
type OptInCodeStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type OptInCodeProperties = {
    label?: string | null;
    show_label?: boolean;
    placeholder?: string | null;
    error_messages?: ErrorMessages;
    property_name?: OptInCodeEnum;
    required?: true;
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
};
type OptInCode = {
    id?: string | null;
    type: OptInCodeEnum;
    styles?: OptInCodeStyles;
    properties: OptInCodeProperties;
};
type PhoneNumberEnum = 'phone_number';
type PhoneNumberStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type PhoneNumberConsentChannelSettings = {
    /**
     * Consent Type Enum.
     */
    consent_type?: 'phone_number_only' | 'promotional' | 'transactional';
};
type ChannelSettings = {
    sms?: PhoneNumberConsentChannelSettings;
    whatsapp?: PhoneNumberConsentChannelSettings;
};
type PhoneNumberProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    label?: string | null;
    show_label?: boolean;
    placeholder?: string | null;
    required?: boolean | null;
    error_messages?: ErrorMessages;
    property_name?: string;
    sms_consent_type?: Array<'phone_number_only' | 'promotional' | 'transactional'> | null;
    channel_settings?: ChannelSettings;
};
type PhoneNumber = {
    id?: string | null;
    type: PhoneNumberEnum;
    styles?: PhoneNumberStyles;
    properties: PhoneNumberProperties;
};
type PromotionalSmsCheckboxEnum = 'promotional_sms_checkbox';
type SmsConsentCheckboxStyles = {
    padding?: Padding;
    background_color?: string | null;
    /**
     * Horizontal alignment enumeration.
     */
    horizontal_alignment?: 'center' | 'left' | 'right';
};
type OptInPromotionalSmsEnum = 'opt_in_promotional_sms';
type SmsConsentCheckboxProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    label?: string | null;
    show_label?: boolean;
    error_messages?: ErrorMessages;
    required?: false;
    property_name?: OptInPromotionalSmsEnum;
    checkbox_text: string;
    placeholder?: unknown;
    channels?: Array<'sms' | 'whatsapp'>;
};
type SmsConsentCheckbox = {
    id?: string | null;
    type: PromotionalSmsCheckboxEnum;
    styles?: SmsConsentCheckboxStyles;
    properties: SmsConsentCheckboxProperties;
};
type TextStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type TextProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    property_name: string;
    label?: string | null;
    show_label?: boolean;
    placeholder?: string | null;
    required?: boolean | null;
    error_messages?: ErrorMessages;
};
type Text = {
    id?: string | null;
    type: TextEnum;
    styles?: TextStyles;
    properties: TextProperties;
};
type CheckboxesEnum = 'checkboxes';
type CheckboxesStyles = {
    padding?: Padding;
    background_color?: string | null;
    /**
     * Arrangement enumeration.
     */
    arrangement?: 'horizontal' | 'vertical';
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
};
type PropertyOption = {
    label: string;
    value: string;
};
type CheckboxesProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    property_name: string;
    label?: string | null;
    show_label?: boolean;
    required?: boolean | null;
    error_messages?: ErrorMessages;
    options: Array<PropertyOption>;
    placeholder?: string | null;
};
type Checkboxes = {
    id?: string | null;
    type: CheckboxesEnum;
    styles?: CheckboxesStyles;
    properties: CheckboxesProperties;
};
type RadioButtonsEnum = 'radio_buttons';
type RadioButtonsStyles = {
    padding?: Padding;
    background_color?: string | null;
    /**
     * Arrangement enumeration.
     */
    arrangement?: 'horizontal' | 'vertical';
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
};
type RadioButtonsProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    property_name: string;
    label?: string | null;
    show_label?: boolean;
    required?: boolean | null;
    error_messages?: ErrorMessages;
    options: Array<PropertyOption>;
    placeholder?: string | null;
};
type RadioButtons = {
    id?: string | null;
    type: RadioButtonsEnum;
    styles?: RadioButtonsStyles;
    properties: RadioButtonsProperties;
};
type DropdownEnum = 'dropdown';
type DropdownStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type DropdownProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    property_name: string;
    label?: string | null;
    show_label?: boolean;
    required?: boolean | null;
    error_messages?: ErrorMessages;
    options: Array<PropertyOption>;
    placeholder?: string | null;
};
type Dropdown = {
    id?: string | null;
    type: DropdownEnum;
    styles?: DropdownStyles;
    properties: DropdownProperties;
};
type ImageDropShadowStyles = {
    enabled?: boolean;
    color?: string;
    blur?: number;
    x_offset?: number;
    y_offset?: number;
};
type ImageStyles = {
    /**
     * Horizontal alignment enumeration.
     */
    horizontal_alignment?: 'center' | 'left' | 'right';
    width?: number | null;
    padding?: Padding;
    background_color?: string | null;
    drop_shadow?: ImageDropShadowStyles;
};
type ImageAssetProperties = {
    src?: string | null;
    alt_text?: string | null;
    original_image_url?: string | null;
    id?: number | null;
    asset_id?: number | null;
};
type ImageProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    image: ImageAssetProperties;
    additional_fields?: Array<AdditionalField> | null;
};
type Image = {
    id?: string | null;
    type: ImageEnum;
    styles?: ImageStyles;
    properties: ImageProperties;
    action?: Close | NextStep | OpenForm | PromotionalSmsSubscription | Redirect | ResendOptInCode | SubmitOptInCode | SubscribeViaSms | SubscribeViaWhatsApp | GoToInbox | SubmitBackInStock | SkipToSuccess | null;
};
type CountdownTimerEnum = 'countdown_timer';
type CountdownTimerStyles = {
    padding?: Padding;
    background_color?: string | null;
    text_styles?: TextStyle;
    card_color?: string;
    label_font_size?: number;
    /**
     * Font weight enumeration.
     */
    label_font_weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
};
type FixedEnum = 'fixed';
type FixedTimerConfiguration = {
    type: FixedEnum;
    timezone: 'Africa/Abidjan' | 'Africa/Accra' | 'Africa/Addis_Ababa' | 'Africa/Algiers' | 'Africa/Asmara' | 'Africa/Asmera' | 'Africa/Bamako' | 'Africa/Bangui' | 'Africa/Banjul' | 'Africa/Bissau' | 'Africa/Blantyre' | 'Africa/Brazzaville' | 'Africa/Bujumbura' | 'Africa/Cairo' | 'Africa/Casablanca' | 'Africa/Ceuta' | 'Africa/Conakry' | 'Africa/Dakar' | 'Africa/Dar_es_Salaam' | 'Africa/Djibouti' | 'Africa/Douala' | 'Africa/El_Aaiun' | 'Africa/Freetown' | 'Africa/Gaborone' | 'Africa/Harare' | 'Africa/Johannesburg' | 'Africa/Juba' | 'Africa/Kampala' | 'Africa/Khartoum' | 'Africa/Kigali' | 'Africa/Kinshasa' | 'Africa/Lagos' | 'Africa/Libreville' | 'Africa/Lome' | 'Africa/Luanda' | 'Africa/Lubumbashi' | 'Africa/Lusaka' | 'Africa/Malabo' | 'Africa/Maputo' | 'Africa/Maseru' | 'Africa/Mbabane' | 'Africa/Mogadishu' | 'Africa/Monrovia' | 'Africa/Nairobi' | 'Africa/Ndjamena' | 'Africa/Niamey' | 'Africa/Nouakchott' | 'Africa/Ouagadougou' | 'Africa/Porto-Novo' | 'Africa/Sao_Tome' | 'Africa/Timbuktu' | 'Africa/Tripoli' | 'Africa/Tunis' | 'Africa/Windhoek' | 'America/Adak' | 'America/Anchorage' | 'America/Anguilla' | 'America/Antigua' | 'America/Araguaina' | 'America/Argentina/Buenos_Aires' | 'America/Argentina/Catamarca' | 'America/Argentina/ComodRivadavia' | 'America/Argentina/Cordoba' | 'America/Argentina/Jujuy' | 'America/Argentina/La_Rioja' | 'America/Argentina/Mendoza' | 'America/Argentina/Rio_Gallegos' | 'America/Argentina/Salta' | 'America/Argentina/San_Juan' | 'America/Argentina/San_Luis' | 'America/Argentina/Tucuman' | 'America/Argentina/Ushuaia' | 'America/Aruba' | 'America/Asuncion' | 'America/Atikokan' | 'America/Atka' | 'America/Bahia' | 'America/Bahia_Banderas' | 'America/Barbados' | 'America/Belem' | 'America/Belize' | 'America/Blanc-Sablon' | 'America/Boa_Vista' | 'America/Bogota' | 'America/Boise' | 'America/Buenos_Aires' | 'America/Cambridge_Bay' | 'America/Campo_Grande' | 'America/Cancun' | 'America/Caracas' | 'America/Catamarca' | 'America/Cayenne' | 'America/Cayman' | 'America/Chicago' | 'America/Chihuahua' | 'America/Ciudad_Juarez' | 'America/Coral_Harbour' | 'America/Cordoba' | 'America/Costa_Rica' | 'America/Creston' | 'America/Cuiaba' | 'America/Curacao' | 'America/Danmarkshavn' | 'America/Dawson' | 'America/Dawson_Creek' | 'America/Denver' | 'America/Detroit' | 'America/Dominica' | 'America/Edmonton' | 'America/Eirunepe' | 'America/El_Salvador' | 'America/Ensenada' | 'America/Fort_Nelson' | 'America/Fort_Wayne' | 'America/Fortaleza' | 'America/Glace_Bay' | 'America/Godthab' | 'America/Goose_Bay' | 'America/Grand_Turk' | 'America/Grenada' | 'America/Guadeloupe' | 'America/Guatemala' | 'America/Guayaquil' | 'America/Guyana' | 'America/Halifax' | 'America/Havana' | 'America/Hermosillo' | 'America/Indiana/Indianapolis' | 'America/Indiana/Knox' | 'America/Indiana/Marengo' | 'America/Indiana/Petersburg' | 'America/Indiana/Tell_City' | 'America/Indiana/Vevay' | 'America/Indiana/Vincennes' | 'America/Indiana/Winamac' | 'America/Indianapolis' | 'America/Inuvik' | 'America/Iqaluit' | 'America/Jamaica' | 'America/Jujuy' | 'America/Juneau' | 'America/Kentucky/Louisville' | 'America/Kentucky/Monticello' | 'America/Knox_IN' | 'America/Kralendijk' | 'America/La_Paz' | 'America/Lima' | 'America/Los_Angeles' | 'America/Louisville' | 'America/Lower_Princes' | 'America/Maceio' | 'America/Managua' | 'America/Manaus' | 'America/Marigot' | 'America/Martinique' | 'America/Matamoros' | 'America/Mazatlan' | 'America/Mendoza' | 'America/Menominee' | 'America/Merida' | 'America/Metlakatla' | 'America/Mexico_City' | 'America/Miquelon' | 'America/Moncton' | 'America/Monterrey' | 'America/Montevideo' | 'America/Montreal' | 'America/Montserrat' | 'America/Nassau' | 'America/New_York' | 'America/Nipigon' | 'America/Nome' | 'America/Noronha' | 'America/North_Dakota/Beulah' | 'America/North_Dakota/Center' | 'America/North_Dakota/New_Salem' | 'America/Nuuk' | 'America/Ojinaga' | 'America/Panama' | 'America/Pangnirtung' | 'America/Paramaribo' | 'America/Phoenix' | 'America/Port-au-Prince' | 'America/Port_of_Spain' | 'America/Porto_Acre' | 'America/Porto_Velho' | 'America/Puerto_Rico' | 'America/Punta_Arenas' | 'America/Rainy_River' | 'America/Rankin_Inlet' | 'America/Recife' | 'America/Regina' | 'America/Resolute' | 'America/Rio_Branco' | 'America/Rosario' | 'America/Santa_Isabel' | 'America/Santarem' | 'America/Santiago' | 'America/Santo_Domingo' | 'America/Sao_Paulo' | 'America/Scoresbysund' | 'America/Shiprock' | 'America/Sitka' | 'America/St_Barthelemy' | 'America/St_Johns' | 'America/St_Kitts' | 'America/St_Lucia' | 'America/St_Thomas' | 'America/St_Vincent' | 'America/Swift_Current' | 'America/Tegucigalpa' | 'America/Thule' | 'America/Thunder_Bay' | 'America/Tijuana' | 'America/Toronto' | 'America/Tortola' | 'America/Vancouver' | 'America/Virgin' | 'America/Whitehorse' | 'America/Winnipeg' | 'America/Yakutat' | 'America/Yellowknife' | 'Antarctica/Casey' | 'Antarctica/Davis' | 'Antarctica/DumontDUrville' | 'Antarctica/Macquarie' | 'Antarctica/Mawson' | 'Antarctica/McMurdo' | 'Antarctica/Palmer' | 'Antarctica/Rothera' | 'Antarctica/South_Pole' | 'Antarctica/Syowa' | 'Antarctica/Troll' | 'Antarctica/Vostok' | 'Arctic/Longyearbyen' | 'Asia/Aden' | 'Asia/Almaty' | 'Asia/Amman' | 'Asia/Anadyr' | 'Asia/Aqtau' | 'Asia/Aqtobe' | 'Asia/Ashgabat' | 'Asia/Ashkhabad' | 'Asia/Atyrau' | 'Asia/Baghdad' | 'Asia/Bahrain' | 'Asia/Baku' | 'Asia/Bangkok' | 'Asia/Barnaul' | 'Asia/Beirut' | 'Asia/Bishkek' | 'Asia/Brunei' | 'Asia/Calcutta' | 'Asia/Chita' | 'Asia/Choibalsan' | 'Asia/Chongqing' | 'Asia/Chungking' | 'Asia/Colombo' | 'Asia/Dacca' | 'Asia/Damascus' | 'Asia/Dhaka' | 'Asia/Dili' | 'Asia/Dubai' | 'Asia/Dushanbe' | 'Asia/Famagusta' | 'Asia/Gaza' | 'Asia/Harbin' | 'Asia/Hebron' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Hovd' | 'Asia/Irkutsk' | 'Asia/Istanbul' | 'Asia/Jakarta' | 'Asia/Jayapura' | 'Asia/Jerusalem' | 'Asia/Kabul' | 'Asia/Kamchatka' | 'Asia/Karachi' | 'Asia/Kashgar' | 'Asia/Kathmandu' | 'Asia/Katmandu' | 'Asia/Khandyga' | 'Asia/Kolkata' | 'Asia/Krasnoyarsk' | 'Asia/Kuala_Lumpur' | 'Asia/Kuching' | 'Asia/Kuwait' | 'Asia/Macao' | 'Asia/Macau' | 'Asia/Magadan' | 'Asia/Makassar' | 'Asia/Manila' | 'Asia/Muscat' | 'Asia/Nicosia' | 'Asia/Novokuznetsk' | 'Asia/Novosibirsk' | 'Asia/Omsk' | 'Asia/Oral' | 'Asia/Phnom_Penh' | 'Asia/Pontianak' | 'Asia/Pyongyang' | 'Asia/Qatar' | 'Asia/Qostanay' | 'Asia/Qyzylorda' | 'Asia/Rangoon' | 'Asia/Riyadh' | 'Asia/Saigon' | 'Asia/Sakhalin' | 'Asia/Samarkand' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Srednekolymsk' | 'Asia/Taipei' | 'Asia/Tashkent' | 'Asia/Tbilisi' | 'Asia/Tehran' | 'Asia/Tel_Aviv' | 'Asia/Thimbu' | 'Asia/Thimphu' | 'Asia/Tokyo' | 'Asia/Tomsk' | 'Asia/Ujung_Pandang' | 'Asia/Ulaanbaatar' | 'Asia/Ulan_Bator' | 'Asia/Urumqi' | 'Asia/Ust-Nera' | 'Asia/Vientiane' | 'Asia/Vladivostok' | 'Asia/Yakutsk' | 'Asia/Yangon' | 'Asia/Yekaterinburg' | 'Asia/Yerevan' | 'Atlantic/Azores' | 'Atlantic/Bermuda' | 'Atlantic/Canary' | 'Atlantic/Cape_Verde' | 'Atlantic/Faeroe' | 'Atlantic/Faroe' | 'Atlantic/Jan_Mayen' | 'Atlantic/Madeira' | 'Atlantic/Reykjavik' | 'Atlantic/South_Georgia' | 'Atlantic/St_Helena' | 'Atlantic/Stanley' | 'Australia/ACT' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Broken_Hill' | 'Australia/Canberra' | 'Australia/Currie' | 'Australia/Darwin' | 'Australia/Eucla' | 'Australia/Hobart' | 'Australia/LHI' | 'Australia/Lindeman' | 'Australia/Lord_Howe' | 'Australia/Melbourne' | 'Australia/NSW' | 'Australia/North' | 'Australia/Perth' | 'Australia/Queensland' | 'Australia/South' | 'Australia/Sydney' | 'Australia/Tasmania' | 'Australia/Victoria' | 'Australia/West' | 'Australia/Yancowinna' | 'Brazil/Acre' | 'Brazil/DeNoronha' | 'Brazil/East' | 'Brazil/West' | 'CET' | 'CST6CDT' | 'Canada/Atlantic' | 'Canada/Central' | 'Canada/Eastern' | 'Canada/Mountain' | 'Canada/Newfoundland' | 'Canada/Pacific' | 'Canada/Saskatchewan' | 'Canada/Yukon' | 'Chile/Continental' | 'Chile/EasterIsland' | 'Cuba' | 'EET' | 'EST' | 'EST5EDT' | 'Egypt' | 'Eire' | 'Etc/GMT' | 'Etc/GMT+0' | 'Etc/GMT+1' | 'Etc/GMT+10' | 'Etc/GMT+11' | 'Etc/GMT+12' | 'Etc/GMT+2' | 'Etc/GMT+3' | 'Etc/GMT+4' | 'Etc/GMT+5' | 'Etc/GMT+6' | 'Etc/GMT+7' | 'Etc/GMT+8' | 'Etc/GMT+9' | 'Etc/GMT-0' | 'Etc/GMT-1' | 'Etc/GMT-10' | 'Etc/GMT-11' | 'Etc/GMT-12' | 'Etc/GMT-13' | 'Etc/GMT-14' | 'Etc/GMT-2' | 'Etc/GMT-3' | 'Etc/GMT-4' | 'Etc/GMT-5' | 'Etc/GMT-6' | 'Etc/GMT-7' | 'Etc/GMT-8' | 'Etc/GMT-9' | 'Etc/GMT0' | 'Etc/Greenwich' | 'Etc/UCT' | 'Etc/UTC' | 'Etc/Universal' | 'Etc/Zulu' | 'Europe/Amsterdam' | 'Europe/Andorra' | 'Europe/Astrakhan' | 'Europe/Athens' | 'Europe/Belfast' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Bratislava' | 'Europe/Brussels' | 'Europe/Bucharest' | 'Europe/Budapest' | 'Europe/Busingen' | 'Europe/Chisinau' | 'Europe/Copenhagen' | 'Europe/Dublin' | 'Europe/Gibraltar' | 'Europe/Guernsey' | 'Europe/Helsinki' | 'Europe/Isle_of_Man' | 'Europe/Istanbul' | 'Europe/Jersey' | 'Europe/Kaliningrad' | 'Europe/Kiev' | 'Europe/Kirov' | 'Europe/Kyiv' | 'Europe/Lisbon' | 'Europe/Ljubljana' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Malta' | 'Europe/Mariehamn' | 'Europe/Minsk' | 'Europe/Monaco' | 'Europe/Moscow' | 'Europe/Nicosia' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Podgorica' | 'Europe/Prague' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Samara' | 'Europe/San_Marino' | 'Europe/Sarajevo' | 'Europe/Saratov' | 'Europe/Simferopol' | 'Europe/Skopje' | 'Europe/Sofia' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Tirane' | 'Europe/Tiraspol' | 'Europe/Ulyanovsk' | 'Europe/Uzhgorod' | 'Europe/Vaduz' | 'Europe/Vatican' | 'Europe/Vienna' | 'Europe/Vilnius' | 'Europe/Volgograd' | 'Europe/Warsaw' | 'Europe/Zagreb' | 'Europe/Zaporozhye' | 'Europe/Zurich' | 'GB' | 'GB-Eire' | 'GMT' | 'GMT+0' | 'GMT-0' | 'GMT0' | 'Greenwich' | 'HST' | 'Hongkong' | 'Iceland' | 'Indian/Antananarivo' | 'Indian/Chagos' | 'Indian/Christmas' | 'Indian/Cocos' | 'Indian/Comoro' | 'Indian/Kerguelen' | 'Indian/Mahe' | 'Indian/Maldives' | 'Indian/Mauritius' | 'Indian/Mayotte' | 'Indian/Reunion' | 'Iran' | 'Israel' | 'Jamaica' | 'Japan' | 'Kwajalein' | 'Libya' | 'MET' | 'MST' | 'MST7MDT' | 'Mexico/BajaNorte' | 'Mexico/BajaSur' | 'Mexico/General' | 'NZ' | 'NZ-CHAT' | 'Navajo' | 'PRC' | 'PST8PDT' | 'Pacific/Apia' | 'Pacific/Auckland' | 'Pacific/Bougainville' | 'Pacific/Chatham' | 'Pacific/Chuuk' | 'Pacific/Easter' | 'Pacific/Efate' | 'Pacific/Enderbury' | 'Pacific/Fakaofo' | 'Pacific/Fiji' | 'Pacific/Funafuti' | 'Pacific/Galapagos' | 'Pacific/Gambier' | 'Pacific/Guadalcanal' | 'Pacific/Guam' | 'Pacific/Honolulu' | 'Pacific/Johnston' | 'Pacific/Kanton' | 'Pacific/Kiritimati' | 'Pacific/Kosrae' | 'Pacific/Kwajalein' | 'Pacific/Majuro' | 'Pacific/Marquesas' | 'Pacific/Midway' | 'Pacific/Nauru' | 'Pacific/Niue' | 'Pacific/Norfolk' | 'Pacific/Noumea' | 'Pacific/Pago_Pago' | 'Pacific/Palau' | 'Pacific/Pitcairn' | 'Pacific/Pohnpei' | 'Pacific/Ponape' | 'Pacific/Port_Moresby' | 'Pacific/Rarotonga' | 'Pacific/Saipan' | 'Pacific/Samoa' | 'Pacific/Tahiti' | 'Pacific/Tarawa' | 'Pacific/Tongatapu' | 'Pacific/Truk' | 'Pacific/Wake' | 'Pacific/Wallis' | 'Pacific/Yap' | 'Poland' | 'Portugal' | 'ROC' | 'ROK' | 'Singapore' | 'Turkey' | 'UCT' | 'US/Alaska' | 'US/Aleutian' | 'US/Arizona' | 'US/Central' | 'US/East-Indiana' | 'US/Eastern' | 'US/Hawaii' | 'US/Indiana-Starke' | 'US/Michigan' | 'US/Mountain' | 'US/Pacific' | 'US/Samoa' | 'UTC' | 'Universal' | 'W-SU' | 'WET' | 'Zulu';
    end_time?: string | null;
};
type VariableEnum = 'variable';
type VariableTimerConfiguration = {
    type: VariableEnum;
    days: number;
    hours: number;
    minutes: number;
};
type CountdownTimerProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    /**
     * Options for displaying a timer.
     */
    clock_face?: 'flip' | 'simple';
    /**
     * Options for timer completion animations.
     */
    animation?: 'flash' | 'heartbeat' | 'pulse';
    configuration: FixedTimerConfiguration | VariableTimerConfiguration;
};
type CountdownTimer = {
    id?: string | null;
    type: CountdownTimerEnum;
    styles?: CountdownTimerStyles;
    properties: CountdownTimerProperties;
};
type SignupCounterEnum = 'signup_counter';
type SignupCounterStyles = {
    padding?: Padding;
    background_color?: string | null;
};
type SignupCounterProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    /**
     * Timeframes for the signup counter lookback.
     */
    timeframe: '1_hour' | '24_hours' | '30_days' | '7_days';
    min_submits: number;
    content: string;
};
type SignupCounter = {
    id?: string | null;
    type: SignupCounterEnum;
    styles?: SignupCounterStyles;
    properties: SignupCounterProperties;
};
type SpinToWinSliceConfig = {
    label: string;
    probability: number;
    step_id: string;
};
type SpinToWinProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    duplicate_slices?: boolean;
    slices: Array<SpinToWinSliceConfig>;
};
type SpinToWinEnum = 'spin_to_win';
type SpinToWinSliceStyle = {
    background_color?: string;
    text_color?: string;
};
type SpinToWinStyles = {
    padding?: Padding;
    background_color?: string | null;
    slice_styles?: Array<SpinToWinSliceStyle>;
    text_styles?: TextStyle;
    center_color?: string;
    outline_color?: string;
    outline_thickness?: number;
    pin_color?: string;
    wheel_size?: number;
};
type SpinToWin = {
    id?: string | null;
    properties: SpinToWinProperties;
    type: SpinToWinEnum;
    styles?: SpinToWinStyles;
};
type SmsDisclosureEnum = 'sms_disclosure';
type SmsDisclosureTextStyle = {
    font_family?: 'Arial Black,Arial' | 'Arial, \'Helvetica Neue\', Helvetica, sans-serif' | 'Century Gothic,AppleGothic,Arial' | 'Comic Sans MS,Comic Sans,cursive' | 'Courier' | 'Courier New' | 'Geneva,Arial' | 'Georgia' | 'Helvetica,Arial' | 'Lucida Grande,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'MS Serif,Georgia' | 'New York,Georgia' | 'Palatino Linotype,Palatino,Georgia' | 'Palatino,Georgia' | 'Tahoma,sans-serif' | 'Times New Roman' | 'Trebuchet MS' | 'Verdana' | string;
    font_size?: number;
    /**
     * Font weight enumeration.
     */
    font_weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
    text_color?: string;
    character_spacing?: number | null;
};
type SmsDisclosureStyles = {
    padding?: Padding;
    background_color?: string | null;
    link_styles?: SmsDisclosureTextStyle;
    text_styles?: SmsDisclosureTextStyle;
};
type CustomEnum = 'custom';
type SmsDisclosureCustom = {
    type: CustomEnum;
    compliance_company_name?: string;
    privacy_policy_url?: string;
    terms_of_service_url?: string;
    html?: string;
};
type AccountDefaultEnum = 'account_default';
type SmsDisclosureAccountDefault = {
    type: AccountDefaultEnum;
    html?: unknown;
};
type SmsDisclosureProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    content?: SmsDisclosureCustom | SmsDisclosureAccountDefault;
};
type SmsDisclosure = {
    id?: string | null;
    type: SmsDisclosureEnum;
    styles?: SmsDisclosureStyles;
    properties?: SmsDisclosureProperties;
};
type BisPromotionalEmailCheckboxEnum = 'bis_promotional_email_checkbox';
type BackInStockEmailConsentCheckboxStyles = {
    padding?: Padding;
    background_color?: string | null;
    /**
     * Horizontal alignment enumeration.
     */
    horizontal_alignment?: 'center' | 'left' | 'right';
};
type OptInPromotionalEmailEnum = 'opt_in_promotional_email';
type BackInStockEmailConsentCheckboxProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    label?: string | null;
    show_label?: boolean;
    error_messages?: ErrorMessages;
    required?: false;
    property_name?: OptInPromotionalEmailEnum;
    checkbox_text: string;
    placeholder?: unknown;
};
type BackInStockEmailConsentCheckbox = {
    id?: string | null;
    type: BisPromotionalEmailCheckboxEnum;
    styles?: BackInStockEmailConsentCheckboxStyles;
    properties: BackInStockEmailConsentCheckboxProperties;
};
type RatingStyle = {
    color?: string;
    empty_color?: string;
    font_size?: number;
    /**
     * Enumeration for review shapes.
     */
    shape?: 'circle' | 'heart' | 'star';
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
    character_spacing?: number;
};
type QuoteStyle = {
    font_family?: string;
    font_size?: number;
    text_color?: string;
    character_spacing?: number;
    font_weight?: number;
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
    line_height?: number;
};
type ReviewerNameStyle = {
    /**
     * Enumeration for review name layouts.
     */
    layout?: 'inline' | 'stacked';
    font_family?: string;
    font_size?: number;
    text_color?: string;
    character_spacing?: number;
    font_weight?: number;
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
    line_height?: number;
};
type ReviewStyles = {
    padding?: Padding;
    background_color?: string | null;
    rating_style?: RatingStyle;
    quote_style?: QuoteStyle;
    reviewer_name_style?: ReviewerNameStyle;
    block_background_color?: string;
};
type ReviewProperties = {
    display_device?: Array<'both' | 'desktop' | 'mobile'>;
    author?: string | null;
    content?: string | null;
    rating?: number;
    verified?: boolean;
    review_id?: number | null;
    show_rating?: boolean;
    show_author?: boolean;
    show_verified?: boolean;
};
type Review = {
    id?: string | null;
    type: ReviewEnum;
    styles?: ReviewStyles;
    properties: ReviewProperties;
};
type Row = {
    id?: string | null;
    blocks: Array<Button | AgeGate | Coupon | Date | Email | HtmlText | OptInCode | PhoneNumber | SmsConsentCheckbox | Text | Checkboxes | RadioButtons | Dropdown | Image | CountdownTimer | SignupCounter | SpinToWin | SmsDisclosure | BackInStockEmailConsentCheckbox | Review>;
};
type BackgroundImageStyles = {
    /**
     * Horizontal alignment enumeration.
     */
    horizontal_alignment?: 'center' | 'left' | 'right';
    width?: number | null;
    /**
     * Image position enumeration.
     */
    position?: 'contain' | 'cover' | 'custom';
    /**
     * Vertical alignment enumeration.
     */
    vertical_alignment?: 'bottom' | 'center' | 'top';
    custom_width?: number | null;
};
type BackgroundImage = {
    styles?: BackgroundImageStyles;
    properties: ImageAssetProperties;
};
type ColumnStyles = {
    background_image?: BackgroundImage;
    background_color?: string | null;
};
type Column = {
    id?: string | null;
    rows?: Array<Row>;
    styles?: ColumnStyles;
};
type Step = {
    id?: string | null;
    columns: Array<Column>;
    name?: string | null;
    steps?: Array<Step> | null;
};
type AfterCloseOrSubmitTimeoutEnum = 'after_close_or_submit_timeout';
type AfterCloseTimeoutProperties = {
    timeout_days?: number;
};
type AfterCloseTimeout = {
    id?: string | null;
    type: AfterCloseOrSubmitTimeoutEnum;
    properties?: AfterCloseTimeoutProperties;
};
type CartItemCountEnum = 'cart_item_count';
type CartItemCountProperties = {
    /**
     * Number comparison enumeration.
     */
    comparison?: 'equals' | 'greater_than' | 'less_than';
    value?: number | null;
};
type CartItemCount = {
    id?: string | null;
    type: CartItemCountEnum;
    properties?: CartItemCountProperties;
};
type CartProductEnum = 'cart_product';
type CartProductProperties = {
    /**
     * Product descriptor enumeration.
     */
    type?: 'brand' | 'categories' | 'id' | 'name';
    value?: string | null;
};
type CartProduct = {
    id?: string | null;
    type: CartProductEnum;
    properties?: CartProductProperties;
};
type CartValueEnum = 'cart_value';
type CartValueProperties = {
    /**
     * Number comparison enumeration.
     */
    comparison?: 'equals' | 'greater_than' | 'less_than';
    value?: number | null;
};
type CartValue = {
    id?: string | null;
    type: CartValueEnum;
    properties?: CartValueProperties;
};
type ChannelEnum = 'channel';
type ChannelProperties = {
    /**
     * Channel type enumeration.
     */
    channel: 'email' | 'sms';
};
type Channel = {
    id?: string | null;
    type: ChannelEnum;
    properties: ChannelProperties;
};
type TriggerBaseProperties = {
    [key: string]: unknown;
};
type CustomJavascriptEnum = 'custom_javascript';
type CustomJavascript = {
    id?: string | null;
    properties?: TriggerBaseProperties;
    type: CustomJavascriptEnum;
};
type DelayEnum = 'delay';
type DelayProperties = {
    seconds?: number;
};
type Delay = {
    id?: string | null;
    type: DelayEnum;
    properties?: DelayProperties;
};
type DeviceEnum = 'device';
type DeviceProperties = {
    /**
     * Enumeration for mobile and desktop.
     */
    device?: 'both' | 'desktop' | 'mobile';
};
type Device = {
    id?: string | null;
    type: DeviceEnum;
    properties?: DeviceProperties;
};
type ExitIntentEnum = 'exit_intent';
type ExitIntent = {
    id?: string | null;
    properties?: TriggerBaseProperties;
    type: ExitIntentEnum;
};
type IdentifiedProfilesEnum = 'identified_profiles';
type IdentifiedProfiles = {
    id?: string | null;
    properties?: TriggerBaseProperties;
    type: IdentifiedProfilesEnum;
};
type ListsAndSegmentsEnum = 'lists_and_segments';
type ListsAndSegmentsProperties = {
    allow_list?: Array<string> | null;
    deny_list?: Array<string> | null;
};
type ListsAndSegments = {
    id?: string | null;
    type: ListsAndSegmentsEnum;
    properties: ListsAndSegmentsProperties;
};
type LocationEnum = 'location';
type LocationProperties = {
    allow_list?: Array<'con_AF' | 'con_AS' | 'con_EU' | 'con_EUP' | 'con_NA' | 'con_OC' | 'con_SA' | 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AN' | 'AO' | 'AQ' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BM' | 'BN' | 'BO' | 'BR' | 'BS' | 'BT' | 'BV' | 'BW' | 'BY' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CK' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CU' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GS' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IO' | 'IQ' | 'IR' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KP' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'LY' | 'MA' | 'MC' | 'MD' | 'ME' | 'MG' | 'MH' | 'MK' | 'ML' | 'MM' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MW' | 'MX' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PS' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RU' | 'RW' | 'SA' | 'SB' | 'SC' | 'SD' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SY' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VE' | 'VG' | 'VI' | 'VN' | 'VU' | 'WF' | 'WS' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW'> | null;
    deny_list?: Array<'con_AF' | 'con_AS' | 'con_EU' | 'con_EUP' | 'con_NA' | 'con_OC' | 'con_SA' | 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AN' | 'AO' | 'AQ' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BM' | 'BN' | 'BO' | 'BR' | 'BS' | 'BT' | 'BV' | 'BW' | 'BY' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CK' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CU' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GS' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IO' | 'IQ' | 'IR' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KP' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'LY' | 'MA' | 'MC' | 'MD' | 'ME' | 'MG' | 'MH' | 'MK' | 'ML' | 'MM' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MW' | 'MX' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PS' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RU' | 'RW' | 'SA' | 'SB' | 'SC' | 'SD' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SY' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VE' | 'VG' | 'VI' | 'VN' | 'VU' | 'WF' | 'WS' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW'> | null;
};
type Location = {
    id?: string | null;
    type: LocationEnum;
    properties: LocationProperties;
};
type PageVisitsEnum = 'page_visits';
type PageVisitsProperties = {
    pages?: number;
};
type PageVisits = {
    id?: string | null;
    type: PageVisitsEnum;
    properties?: PageVisitsProperties;
};
type PreviouslySubmittedEnum = 'previously_submitted';
type PreviouslySubmitted = {
    id?: string | null;
    properties?: TriggerBaseProperties;
    type: PreviouslySubmittedEnum;
};
type ProfileEventTrackedEnum = 'profile_event_tracked';
type ProfileEventTrackedProperties = {
    metric: string;
};
type ProfileEventTracked = {
    id?: string | null;
    type: ProfileEventTrackedEnum;
    properties: ProfileEventTrackedProperties;
};
type ScrollPercentageEnum = 'scroll_percentage';
type ScrollProperties = {
    percentage?: number;
};
type Scroll = {
    id?: string | null;
    type: ScrollPercentageEnum;
    properties?: ScrollProperties;
};
type UnidentifiedProfilesEnum = 'unidentified_profiles';
type UnidentifiedProfiles = {
    id?: string | null;
    properties?: TriggerBaseProperties;
    type: UnidentifiedProfilesEnum;
};
type UrlPatternsEnum = 'url_patterns';
type UrlPatternsProperties = {
    allow_list?: Array<string> | null;
    deny_list?: Array<string> | null;
};
type UrlPatterns = {
    id?: string | null;
    type: UrlPatternsEnum;
    properties?: UrlPatternsProperties;
};
type BackInStockProperties = {
    tag_allowlist?: Array<string>;
    tag_blocklist?: Array<string>;
};
type BackInStock = {
    id?: string | null;
    type: BackInStockEnum;
    properties?: BackInStockProperties;
};
type DropShadow = {
    enabled?: boolean;
    blur?: number;
    color?: string | null;
};
type Margin = {
    left?: number;
    right?: number;
    top?: number;
    bottom?: number;
};
type CloseButtonStyle = {
    background_color?: string;
    outline_color?: string;
    color?: string;
    stroke?: number;
    size?: number;
    margin?: Margin;
};
type TeaserStyles = {
    background_color?: string;
    drop_shadow?: DropShadow;
    corner_radius?: number;
    background_image?: BackgroundImage;
    close_button?: CloseButtonStyle;
    margin?: Margin;
};
type Teaser = {
    id?: string | null;
    content: string;
    /**
     * Teaser display order enumeration.
     */
    display_order?: 'after' | 'before' | 'before_and_after';
    /**
     * Teaser display order enumeration.
     */
    teaser_type?: 'circle' | 'corner' | 'rectangle';
    /**
     * Display location enumeration.
     */
    location?: 'bottom_center' | 'bottom_left' | 'bottom_right' | 'center_left' | 'center_right' | 'top_center' | 'top_left' | 'top_right';
    /**
     * Teaser size enumeration.
     */
    size?: 'custom' | 'large' | 'medium' | 'small';
    custom_size?: number | null;
    styles?: TeaserStyles;
    close_button?: boolean;
    /**
     * Enumeration for mobile and desktop.
     */
    device_type?: 'both' | 'desktop' | 'mobile';
};
type BackInStockDynamicButtonTextStyles = {
    font_family?: 'Arial Black,Arial' | 'Arial, \'Helvetica Neue\', Helvetica, sans-serif' | 'Century Gothic,AppleGothic,Arial' | 'Comic Sans MS,Comic Sans,cursive' | 'Courier' | 'Courier New' | 'Geneva,Arial' | 'Georgia' | 'Helvetica,Arial' | 'Lucida Grande,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'MS Serif,Georgia' | 'New York,Georgia' | 'Palatino Linotype,Palatino,Georgia' | 'Palatino,Georgia' | 'Tahoma,sans-serif' | 'Times New Roman' | 'Trebuchet MS' | 'Verdana' | string;
    font_size?: number;
    /**
     * Font weight enumeration.
     */
    font_weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
    font_color?: string;
    font_style?: string | null;
    text_decoration?: string | null;
    letter_spacing?: number;
};
type BackInStockDynamicButtonBorderStyles = {
    enabled?: boolean;
    color?: string;
    /**
     * Border pattern enumeration.
     */
    style?: 'dashed' | 'dotted' | 'solid';
    width?: number;
};
type BackInStockDynamicButtonDropShadowStyles = {
    enabled?: boolean;
    color?: string;
    blur?: number;
    x_offset?: number;
    y_offset?: number;
};
type BackInStockDynamicButtonStyles = {
    color?: string;
    border_radius?: number;
    height?: number;
    /**
     * Back In Stock Dynamic Button display type enumeration.
     */
    width?: 'fitToText' | 'fullWidth';
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
    border?: BackInStockDynamicButtonBorderStyles;
    drop_shadow?: BackInStockDynamicButtonDropShadowStyles;
};
type BackInStockDynamicButtonData = {
    label?: string;
    /**
     * Back In Stock Dynamic Button display type enumeration.
     */
    display?: 'NEXT_TO' | 'REPLACE';
    text_styles?: BackInStockDynamicButtonTextStyles;
    button_styles?: BackInStockDynamicButtonStyles;
};
type DynamicButton = {
    id?: string | null;
    /**
     * Dynamic Button type enumeration.
     */
    type: 'BACK_IN_STOCK_OPEN';
    data: BackInStockDynamicButtonData;
};
type InputStyles = {
    text_styles?: TextStyle;
    label_color?: string;
    text_color?: string;
    placeholder_color?: string;
    background_color?: string;
    border_color?: string;
    border_focus_color?: string;
    focus_outline_color?: string;
    corner_radius?: number;
    field_height?: number;
};
type RichTextMargin = {
    left?: 0;
    right?: 0;
    top?: 0;
    bottom?: number;
};
type RichTextStyle = {
    font_family?: 'Arial Black,Arial' | 'Arial, \'Helvetica Neue\', Helvetica, sans-serif' | 'Century Gothic,AppleGothic,Arial' | 'Comic Sans MS,Comic Sans,cursive' | 'Courier' | 'Courier New' | 'Geneva,Arial' | 'Georgia' | 'Helvetica,Arial' | 'Lucida Grande,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'Lucida,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif' | 'MS Serif,Georgia' | 'New York,Georgia' | 'Palatino Linotype,Palatino,Georgia' | 'Palatino,Georgia' | 'Tahoma,sans-serif' | 'Times New Roman' | 'Trebuchet MS' | 'Verdana' | string;
    font_size?: number;
    /**
     * Font weight enumeration.
     */
    font_weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
    text_color?: string;
    line_spacing?: number;
    character_spacing?: number | null;
    /**
     * Horizontal alignment enumeration.
     */
    alignment?: 'center' | 'left' | 'right';
    margin?: RichTextMargin;
};
type UnderlineEnum = 'underline';
type LinkStyles = {
    color?: string;
    decoration?: UnderlineEnum;
};
type RichTextStyles = {
    body?: RichTextStyle;
    link?: LinkStyles;
    h1?: RichTextStyle;
    h2?: RichTextStyle;
    h3?: RichTextStyle;
    h4?: RichTextStyle;
    h5?: RichTextStyle;
    h6?: RichTextStyle;
};
type MobileOverlay = {
    color?: string | null;
    enabled?: false;
};
type BannerStyles = {
    /**
     * Positioning of banner forms.
     */
    desktop_position?: 'bottom' | 'top';
    /**
     * Positioning of banner forms.
     */
    mobile_position?: 'bottom' | 'top';
    scroll_with_page?: boolean;
};
type VersionStyles = {
    wrap_content?: false;
    border_styles?: BorderStyle;
    close_button?: CloseButtonStyle;
    margin?: Margin;
    padding?: Padding;
    minimum_height?: number;
    /**
     * Version width enumeration.
     */
    width?: 'custom' | 'large' | 'medium' | 'small';
    custom_width?: number | null;
    background_image?: BackgroundImage;
    background_color?: string | null;
    input_styles?: InputStyles;
    drop_shadow?: DropShadow;
    overlay_color?: string;
    rich_text_styles?: RichTextStyles;
    mobile_overlay?: MobileOverlay;
    banner_styles?: BannerStyles;
};
type SideImageSettings = {
    /**
     * Side image size enumeration.
     */
    size?: 'large' | 'medium' | 'small';
    /**
     * Side image alignment enumeration.
     */
    alignment?: 'left' | 'right';
    device_type?: Array<'both' | 'desktop' | 'mobile'>;
};
type VersionProperties = {
    side_image_settings?: SideImageSettings;
    click_outside_to_close?: Array<'both' | 'desktop' | 'mobile'> | null;
    /**
     * Side image alignment enumeration.
     */
    rule_based_trigger_evaluation?: 'all' | 'any';
    record_utm_params_on_submit?: boolean;
    show_close_button?: boolean;
};
type Version = {
    id?: number | null;
    steps: Array<Step>;
    triggers?: Array<AfterCloseTimeout | CartItemCount | CartProduct | CartValue | Channel | CustomJavascript | Delay | Device | ExitIntent | IdentifiedProfiles | ListsAndSegments | Location | PageVisits | PreviouslySubmitted | ProfileEventTracked | Scroll | UnidentifiedProfiles | UrlPatterns | BackInStock>;
    teasers?: Array<Teaser>;
    dynamic_button?: DynamicButton;
    name?: string | null;
    styles?: VersionStyles;
    properties?: VersionProperties;
    /**
     * Form type enumeration.
     */
    type?: 'banner' | 'embed' | 'flyout' | 'full_screen' | 'popup';
    /**
     * Display location enumeration.
     */
    location?: 'bottom_center' | 'bottom_left' | 'bottom_right' | 'center_left' | 'center_right' | 'top_center' | 'top_left' | 'top_right';
    /**
     * Form status enumeration.
     */
    status?: 'draft' | 'live';
    ab_test?: boolean;
    specialties?: Array<'BACK_IN_STOCK'>;
};
type FormDefinition = {
    versions: Array<Version>;
};
type EncodedFormResponseObjectResource = {
    type: FormEnum;
    /**
     * The ID of the form
     */
    id: string;
    attributes: {
        /**
         * The status of the form.
         */
        status: 'draft' | 'live';
        /**
         * Whether the form has an A/B test configured.
         */
        ab_test: boolean;
        /**
         * The name of the form.
         */
        name: string;
        definition: FormDefinition;
        /**
         * The ISO8601 timestamp when the form was created.
         */
        created_at: string;
        /**
         * The ISO8601 timestamp when the form was last updated.
         */
        updated_at: string;
    };
    links: ObjectLinks;
};
type GetEncodedFormResponse = {
    data: EncodedFormResponseObjectResource;
    links?: ObjectLinks;
};
type MetricPropertyResponseObjectResource = {
    type: MetricPropertyEnum;
    /**
     * The ID of the metric property
     */
    id: string;
    attributes: {
        /**
         * The label for this metric property
         */
        label: string;
        /**
         * The property for this metric property
         */
        property: string;
        /**
         * Inferred type for this metric property
         */
        inferred_type: string;
    };
    links: ObjectLinks;
};
type GetMetricPropertyResponseCompoundDocument = {
    data: MetricPropertyResponseObjectResource & {
        relationships?: {
            metric?: {
                data?: {
                    type: MetricEnum;
                    /**
                     * Related Metric
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: MetricPropertyEnum;
        attributes?: {
            sample_values?: Array<number | number | string | boolean> | null;
        };
    };
    included?: Array<MetricResponseObjectResource>;
    links?: ObjectLinks;
};
type GetMetricPropertyResponseCollection = {
    data: Array<MetricPropertyResponseObjectResource & {
        relationships?: {
            metric?: {
                links?: RelationshipLinks;
            };
        };
    } & {
        type?: MetricPropertyEnum;
        attributes?: {
            sample_values?: Array<number | number | string | boolean> | null;
        };
    }>;
    links?: CollectionLinks;
};
type GetMetricPropertiesRelationshipsResponseCollection = {
    data: Array<{
        type: MetricPropertyEnum;
        /**
         * The ID of the metric property
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetMetricPropertyMetricRelationshipResponse = {
    data: {
        type: MetricEnum;
        /**
         * The Metric ID
         */
        id: string;
    };
    links?: ObjectLinks;
};
type FormVersionAbTest = {
    /**
     * This is the name of the AB test variation.
     */
    variation_name: string;
};
type FormVersionEnum = 'form-version';
type FormVersionResponseObjectResource = {
    type: FormVersionEnum;
    /**
     * ID of the form version. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * The type of form.
         */
        form_type: 'banner' | 'embed' | 'flyout' | 'full_page' | 'popup';
        /**
         * The name of the form version.
         */
        variation_name: string;
        ab_test?: FormVersionAbTest;
        /**
         * Status of the form version. "live" means it's live on site.
         */
        status: 'draft' | 'live';
        /**
         * ISO8601 timestamp when the form version was created.
         */
        created_at: string;
        /**
         * ISO8601 timestamp when the form version was last updated.
         */
        updated_at: string;
    };
    links: ObjectLinks;
};
type GetFormVersionResponseCollection = {
    data: Array<FormVersionResponseObjectResource>;
    links?: CollectionLinks;
};
type GetFormVersionsRelationshipsResponseCollection = {
    data: Array<{
        type: FormVersionEnum;
        /**
         * ID of the form version. Generated by Klaviyo.
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type GetFormResponse = {
    data: FormResponseObjectResource & {
        relationships?: {
            'form-versions'?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetFormVersionFormRelationshipResponse = {
    data: {
        type: FormEnum;
        /**
         * ID of the form. Generated by Klaviyo.
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetFormVersionResponse = {
    data: FormVersionResponseObjectResource;
    links?: ObjectLinks;
};
type FlowTrackingSettingDynamicParam = {
    type: DynamicEnum;
    /**
     * The value of the tracking parameter
     */
    value: 'email_subject' | 'flow_id' | 'flow_name' | 'link_alt_text' | 'message_name' | 'message_name_id' | 'message_type' | 'profile_external_id' | 'profile_id';
};
type FlowTrackingSettingStaticParam = {
    type: StaticEnum;
    /**
     * The value of the tracking parameter
     */
    value: string;
};
type CampaignTrackingSettingDynamicParam = {
    type: DynamicEnum;
    /**
     * The value of the tracking parameter
     */
    value: 'campaign_id' | 'campaign_name' | 'campaign_name_id' | 'campaign_name_send_day' | 'email_subject' | 'group_id' | 'group_name' | 'group_name_id' | 'link_alt_text' | 'message_type' | 'profile_external_id' | 'profile_id';
};
type CampaignTrackingSettingStaticParam = {
    type: StaticEnum;
    /**
     * The value of the tracking parameter
     */
    value: string;
};
type TrackingParamDto = {
    /**
     * The value of the tracking parameter when applied to a flow.
     */
    flow?: FlowTrackingSettingDynamicParam | FlowTrackingSettingStaticParam | null;
    /**
     * The value of the tracking parameter when applied to a campaign.
     */
    campaign?: CampaignTrackingSettingDynamicParam | CampaignTrackingSettingStaticParam | null;
};
type CustomTrackingParamDto = {
    /**
     * The value of the tracking parameter when applied to a flow.
     */
    flow?: FlowTrackingSettingDynamicParam | FlowTrackingSettingStaticParam | null;
    /**
     * The value of the tracking parameter when applied to a campaign.
     */
    campaign?: CampaignTrackingSettingDynamicParam | CampaignTrackingSettingStaticParam | null;
    /**
     * The name of the custom tracking parameter
     */
    name: string;
};
type TrackingSettingEnum = 'tracking-setting';
type TrackingSettingResponseObjectResource = {
    type: TrackingSettingEnum;
    /**
     * The id of the tracking setting (account ID).
     */
    id: string;
    attributes: {
        /**
         * Whether tracking parameters are automatically added to campaigns and flows.
         */
        auto_add_parameters: boolean;
        utm_source: TrackingParamDto;
        utm_medium: TrackingParamDto;
        utm_campaign?: TrackingParamDto;
        utm_id?: TrackingParamDto;
        utm_term?: TrackingParamDto;
        /**
         * Additional custom tracking parameters.
         */
        custom_parameters?: Array<CustomTrackingParamDto> | null;
    };
    links: ObjectLinks;
};
type GetTrackingSettingResponseCollection = {
    data: Array<TrackingSettingResponseObjectResource>;
    links?: CollectionLinks;
};
type GetTrackingSettingResponse = {
    data: TrackingSettingResponseObjectResource;
    links?: ObjectLinks;
};
type DataSourceEnum = 'data-source';
type DataSourceResponseObjectResource = {
    type: DataSourceEnum;
    /**
     * The ID of the data source
     */
    id: string;
    attributes: {
        /**
         * The title of the data source
         */
        title: string;
        /**
         * The status of the data source
         */
        visibility: 'private' | 'shared';
        /**
         * The description of the data source
         */
        description: string;
        /**
         * The namespace of the data source
         */
        namespace: string;
    };
    links: ObjectLinks;
};
type GetDataSourceResponseCollection = {
    data: Array<DataSourceResponseObjectResource>;
    links?: CollectionLinks;
};
type GetDataSourceResponse = {
    data: DataSourceResponseObjectResource;
    links?: ObjectLinks;
};
type WebFeedEnum = 'web-feed';
type WebFeedResponseObjectResource = {
    type: WebFeedEnum;
    /**
     * Primary key that uniquely identifies this web feed. Generated by Klaviyo
     */
    id: string;
    attributes: {
        /**
         * The name of this web feed
         */
        name: string;
        /**
         * The URL of the web feed
         */
        url: string;
        /**
         * The HTTP method for requesting the web feed
         */
        request_method: 'get' | 'post';
        /**
         * The content-type of the web feed
         */
        content_type: 'json' | 'xml';
        /**
         * Date and time when the web feed was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        created: string;
        /**
         * Date and time when the web feed was updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
         */
        updated: string;
        /**
         * The cache status of this web feed if it exists
         */
        status?: 'critical_nightly_refresh_timeout' | 'disabled' | 'ok' | 'warning_nightly_refresh_timeout' | 'warning_periodic_refresh_timeout';
    };
    links: ObjectLinks;
};
type GetWebFeedResponseCollection = {
    data: Array<WebFeedResponseObjectResource>;
    links?: CollectionLinks;
};
type GetWebFeedResponse = {
    data: WebFeedResponseObjectResource;
    links?: ObjectLinks;
};
type StringInArrayFilter = {
    operator: InEnum;
    value: Array<string>;
    type: StringEnum;
};
type ListRegexOperatorListContainsFilter = {
    type: ListEnum;
    /**
     * Operators for list regex filters.
     */
    operator: 'contains-ends-with' | 'contains-starts-with' | 'not-contains-ends-with' | 'not-contains-starts-with';
    value: number | string | null;
};
type CustomMetricCondition = {
    property: string;
    filter: NumericOperatorNumericFilter | StringInArrayFilter | ExistenceOperatorExistenceFilter | BooleanFilter | StringOperatorStringFilter | ListContainsOperatorListContainsFilter | ListRegexOperatorListContainsFilter | ListSubstringFilter;
};
type CustomMetricGroup = {
    /**
     * The ID of the metric that composes the custom metric.
     */
    metric_id: string;
    /**
     * An optional array of objects for filtering on properties of the metric.
     */
    metric_filters?: Array<CustomMetricCondition> | null;
    /**
     *
     * If the custom metric has a `value` aggregation method, the `value_property` of each `metric_group` of the `definition` should specify the property to calculate the conversion value. If null, the default `$value` property will be used.
     *
     */
    value_property?: string | null;
};
type CustomMetricDefinition = {
    /**
     * Method of aggregation for custom metric measurements. If a metric has a `value` aggregation method, it will be treated as a revenue metric, such as a Placed Order metric. If a metric has a `count` aggregation method, it will only be able to report on conversions like an Active on Site metric.
     *
     */
    aggregation_method: 'count' | 'value';
    metric_groups: Array<CustomMetricGroup>;
};
type CustomMetricEnum = 'custom-metric';
type CustomMetricResponseObjectResource = {
    type: CustomMetricEnum;
    /**
     * The ID of the custom metric
     */
    id: string;
    attributes: {
        /**
         * The name for this custom metric. Names must be unique across the account.         Attempting to create a metric with a duplicate name will return a 400 status code.
         */
        name: string;
        /**
         * The datetime when this custom metric was created.
         */
        created: string;
        /**
         * The datetime when this custom metric was updated.
         */
        updated: string;
        definition: CustomMetricDefinition;
    };
    links: ObjectLinks;
};
type GetCustomMetricResponseCollectionCompoundDocument = {
    data: Array<CustomMetricResponseObjectResource & {
        relationships?: {
            metrics?: {
                data?: Array<{
                    type: MetricEnum;
                    /**
                     * Related metrics
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<MetricResponseObjectResource>;
};
type GetCustomMetricResponseCompoundDocument = {
    data: CustomMetricResponseObjectResource & {
        relationships?: {
            metrics?: {
                data?: Array<{
                    type: MetricEnum;
                    /**
                     * Related metrics
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<MetricResponseObjectResource>;
    links?: ObjectLinks;
};
type GetMetricResponseCollection = {
    data: Array<MetricResponseObjectResource & {
        relationships?: {
            'flow-triggers'?: {
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
};
type GetCustomMetricMetricsRelationshipsResponseCollection = {
    data: Array<{
        type: MetricEnum;
        /**
         * The Metric ID
         */
        id: string;
    }>;
    links?: CollectionLinks;
};
type MappedMetricEnum = 'mapped-metric';
type MappedMetricResponseObjectResource = {
    type: MappedMetricEnum;
    /**
     * The type of mapping.
     */
    id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    attributes: {
        /**
         * The datetime when this mapping was last updated.
         */
        updated: string;
    };
    links: ObjectLinks;
};
type GetMappedMetricResponseCollectionCompoundDocument = {
    data: Array<MappedMetricResponseObjectResource & {
        relationships?: {
            metric?: {
                data?: {
                    type: MetricEnum;
                    /**
                     * The ID of the metric for this mapping.
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            'custom-metric'?: {
                data?: {
                    type: CustomMetricEnum;
                    /**
                     * The ID of the custom metric for this mapping.
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    }>;
    links?: CollectionLinks;
    included?: Array<MetricResponseObjectResource | CustomMetricResponseObjectResource>;
};
type GetMappedMetricResponseCompoundDocument = {
    data: MappedMetricResponseObjectResource & {
        relationships?: {
            metric?: {
                data?: {
                    type: MetricEnum;
                    /**
                     * The ID of the metric for this mapping.
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            'custom-metric'?: {
                data?: {
                    type: CustomMetricEnum;
                    /**
                     * The ID of the custom metric for this mapping.
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
    };
    included?: Array<MetricResponseObjectResource | CustomMetricResponseObjectResource>;
    links?: ObjectLinks;
};
type GetMappedMetricMetricRelationshipResponse = {
    data: {
        type: MetricEnum;
        /**
         * The Metric ID
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GetCustomMetricResponse = {
    data: CustomMetricResponseObjectResource & {
        relationships?: {
            metrics?: {
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type GetMappedMetricCustomMetricRelationshipResponse = {
    data: {
        type: CustomMetricEnum;
        /**
         * The ID of the custom metric
         */
        id: string;
    };
    links?: ObjectLinks;
};
type GroupingProduct = {
    /**
     * The ID of the product
     */
    product_id: string;
};
type GroupingCompany = {
    /**
     * The ID of the company
     */
    company_id: string;
};
type StatisticsDto = {
    /**
     * The average rating
     */
    average_rating?: number | null;
    /**
     * The total number of reviews
     */
    total_reviews?: number | null;
    /**
     * The total number of questions
     */
    total_questions?: number | null;
    /**
     * The total number of ratings
     */
    total_ratings?: number | null;
    /**
     * The total number of store reviews
     */
    total_store_reviews?: number | null;
    /**
     * The average rating of store reviews
     */
    average_store_rating?: number | null;
};
type ReviewValueReportGrouping = {
    /**
     * Grouping details, either by product or company
     */
    groupings: GroupingProduct | GroupingCompany;
    statistics: StatisticsDto;
};
type ReviewValuesReportEnum = 'review-values-report';
type ReviewValuesReportResponseObjectResource = {
    type: ReviewValuesReportEnum;
    /**
     * The unique identifier for the reviews values report
     */
    id: string;
    attributes: {
        /**
         * The list of groupings and their corresponding statistics in the reviews values report
         */
        results: Array<ReviewValueReportGrouping>;
    };
    links: ObjectLinks;
};
type GetReviewValuesReportResponseCollection = {
    data: Array<ReviewValuesReportResponseObjectResource>;
    links?: CollectionLinks;
};
type ClientReviewResponseDtoObjectResource = {
    type: ReviewEnum;
    /**
     * The ID of the review
     */
    id: string;
    attributes: {
        /**
         * The status of this review
         */
        status?: ReviewStatusRejected | ReviewStatusFeatured | ReviewStatusPublished | ReviewStatusUnpublished | ReviewStatusPending | null;
        /**
         * The verification status of this review (aka whether or not we have confirmation that the customer bought the product)
         */
        verified: boolean;
        /**
         * The type of this review — either a review, question, or rating
         */
        review_type: 'question' | 'rating' | 'review' | 'store';
        /**
         * The datetime when this review was created
         */
        created: string;
        /**
         * The datetime when this review was updated
         */
        updated: string;
        /**
         * The list of images submitted with this review (represented as a list of urls). If there are no images, this field will be an empty list.
         */
        images: Array<string>;
        product?: ReviewProductDto;
        /**
         * The rating of this review on a scale from 1-5. If the review type is "question", this field will be null.
         */
        rating?: number | null;
        /**
         * The author of this review
         */
        author?: string | null;
        /**
         * The content of this review
         */
        content?: string | null;
        /**
         * The title of this review
         */
        title?: string | null;
        /**
         * A quote from this review that summarizes the content
         */
        smart_quote?: string | null;
        public_reply?: ReviewPublicReply;
    };
    links: ObjectLinks;
};
type GetClientReviewResponseDtoCollection = {
    data: Array<ClientReviewResponseDtoObjectResource>;
    links?: CollectionLinks;
};
type CouponCreateQueryResourceObject = {
    type: CouponEnum;
    attributes: {
        /**
         * This is the id that is stored in an integration such as Shopify or Magento.
         */
        external_id: string;
        /**
         * A description of the coupon.
         */
        description?: string | null;
        /**
         * The monitor configuration for the coupon.
         */
        monitor_configuration?: {
            [key: string]: unknown;
        } | null;
    };
};
type CouponCreateQuery = {
    data: CouponCreateQueryResourceObject;
};
type PostCouponResponse = {
    data: {
        type: CouponEnum;
        /**
         * The internal id of a Coupon is equivalent to its external id stored within an integration.
         */
        id: string;
        attributes: {
            /**
             * This is the id that is stored in an integration such as Shopify or Magento.
             */
            external_id: string;
            /**
             * A description of the coupon.
             */
            description?: string | null;
            /**
             * The monitor configuration for the coupon.
             */
            monitor_configuration?: {
                [key: string]: unknown;
            } | null;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CouponCodeCreateQueryResourceObject = {
    type: CouponCodeEnum;
    attributes: {
        /**
         * This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon.
         */
        unique_code: string;
        /**
         * The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.
         */
        expires_at?: string | null;
    };
    relationships: {
        coupon: {
            data?: {
                type: CouponEnum;
                id: string;
            };
        };
    };
};
type CouponCodeCreateQuery = {
    data: CouponCodeCreateQueryResourceObject;
};
type PostCouponCodeResponse = {
    data: {
        type: CouponCodeEnum;
        /**
         * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
         */
        id: string;
        attributes: {
            /**
             * This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon.
             */
            unique_code?: string | null;
            /**
             * The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.
             */
            expires_at?: string | null;
            /**
             * The current status of the coupon code.
             */
            status?: 'ASSIGNED_TO_PROFILE' | 'DELETING' | 'PROCESSING' | 'UNASSIGNED' | 'USED' | 'VERSION_NOT_ACTIVE';
        };
        relationships?: {
            coupon?: {
                data?: {
                    type: CouponEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            profile?: {
                data?: {
                    type: ProfileEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogItemCreateQueryResourceObject = {
    type: CatalogItemEnum;
    attributes: {
        /**
         * The ID of the catalog item in an external system.
         */
        external_id: string;
        /**
         * The integration type. Currently only "$custom" is supported.
         */
        integration_type?: '$custom';
        /**
         * The title of the catalog item.
         */
        title: string;
        /**
         * This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).
         */
        price?: number | null;
        /**
         * The type of catalog. Currently only "$default" is supported.
         */
        catalog_type?: string | null;
        /**
         * A description of the catalog item.
         */
        description: string;
        /**
         * URL pointing to the location of the catalog item on your website.
         */
        url: string;
        /**
         * URL pointing to the location of a full image of the catalog item.
         */
        image_full_url?: string | null;
        /**
         * URL pointing to the location of an image thumbnail of the catalog item
         */
        image_thumbnail_url?: string | null;
        /**
         * List of URLs pointing to the locations of images of the catalog item.
         */
        images?: Array<string> | null;
        /**
         * Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.
         */
        custom_metadata?: {
            [key: string]: unknown;
        } | null;
        /**
         * Boolean value indicating whether the catalog item is published.
         */
        published?: boolean | null;
    };
    relationships?: {
        categories?: {
            data?: Array<{
                type: CatalogCategoryEnum;
                /**
                 * A list of catalog category IDs representing the categories the item is in
                 */
                id: string;
            }>;
        };
    };
};
type CatalogItemCreateQuery = {
    data: CatalogItemCreateQueryResourceObject;
};
type PostCatalogItemResponse = {
    data: {
        type: CatalogItemEnum;
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
        attributes: {
            /**
             * The ID of the catalog item in an external system.
             */
            external_id?: string | null;
            /**
             * The title of the catalog item.
             */
            title?: string | null;
            /**
             * A description of the catalog item.
             */
            description?: string | null;
            /**
             * This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).
             */
            price?: number | null;
            /**
             * URL pointing to the location of the catalog item on your website.
             */
            url?: string | null;
            /**
             * URL pointing to the location of a full image of the catalog item.
             */
            image_full_url?: string | null;
            /**
             * URL pointing to the location of an image thumbnail of the catalog item
             */
            image_thumbnail_url?: string | null;
            /**
             * List of URLs pointing to the locations of images of the catalog item.
             */
            images?: Array<string> | null;
            /**
             * Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.
             */
            custom_metadata?: {
                [key: string]: unknown;
            } | null;
            /**
             * Boolean value indicating whether the catalog item is published.
             */
            published?: boolean | null;
            /**
             * Date and time when the catalog item was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created?: string | null;
            /**
             * Date and time when the catalog item was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            updated?: string | null;
        };
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogCategoryItemOp = {
    data: Array<{
        type: CatalogItemEnum;
        /**
         * A list of catalog item IDs that are in the given category.
         */
        id: string;
    }>;
};
type CatalogVariantCreateQueryResourceObject = {
    type: CatalogVariantEnum;
    attributes: {
        /**
         * The ID of the catalog item variant in an external system.
         */
        external_id: string;
        /**
         * The type of catalog. Currently only "$default" is supported.
         */
        catalog_type?: string | null;
        /**
         * The integration type. Currently only "$custom" is supported.
         */
        integration_type?: '$custom';
        /**
         * The title of the catalog item variant.
         */
        title: string;
        /**
         * A description of the catalog item variant.
         */
        description: string;
        /**
         * The SKU of the catalog item variant.
         */
        sku: string;
        /**
         * This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values:
         * `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock.
         * `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.
         */
        inventory_policy?: 0 | 1 | 2;
        /**
         * The quantity of the catalog item variant currently in stock.
         */
        inventory_quantity: number;
        /**
         * This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).
         */
        price: number;
        /**
         * URL pointing to the location of the catalog item variant on your website.
         */
        url: string;
        /**
         * URL pointing to the location of a full image of the catalog item variant.
         */
        image_full_url?: string | null;
        /**
         * URL pointing to the location of an image thumbnail of the catalog item variant.
         */
        image_thumbnail_url?: string | null;
        /**
         * List of URLs pointing to the locations of images of the catalog item variant.
         */
        images?: Array<string> | null;
        /**
         * Flat JSON blob to provide custom metadata about the catalog item variant. May not exceed 100kb.
         */
        custom_metadata?: {
            [key: string]: unknown;
        } | null;
        /**
         * Boolean value indicating whether the catalog item variant is published.
         */
        published?: boolean | null;
    };
    relationships: {
        item: {
            data?: {
                type: CatalogItemEnum;
                /**
                 * The original catalog item ID for which this is a variant.
                 */
                id: string;
            };
        };
    };
};
type CatalogVariantCreateQuery = {
    data: CatalogVariantCreateQueryResourceObject;
};
type PostCatalogVariantResponse = {
    data: {
        type: CatalogVariantEnum;
        /**
         * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
        attributes: {
            /**
             * The ID of the catalog item variant in an external system.
             */
            external_id?: string | null;
            /**
             * The title of the catalog item variant.
             */
            title?: string | null;
            /**
             * A description of the catalog item variant.
             */
            description?: string | null;
            /**
             * The SKU of the catalog item variant.
             */
            sku?: string | null;
            /**
             * This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values:
             * `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock.
             * `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.
             */
            inventory_policy?: 0 | 1 | 2;
            /**
             * The quantity of the catalog item variant currently in stock.
             */
            inventory_quantity?: number | null;
            /**
             * This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).
             */
            price?: number | null;
            /**
             * URL pointing to the location of the catalog item variant on your website.
             */
            url?: string | null;
            /**
             * URL pointing to the location of a full image of the catalog item variant.
             */
            image_full_url?: string | null;
            /**
             * URL pointing to the location of an image thumbnail of the catalog item variant.
             */
            image_thumbnail_url?: string | null;
            /**
             * List of URLs pointing to the locations of images of the catalog item variant.
             */
            images?: Array<string> | null;
            /**
             * Flat JSON blob to provide custom metadata about the catalog item variant. May not exceed 100kb.
             */
            custom_metadata?: {
                [key: string]: unknown;
            } | null;
            /**
             * Boolean value indicating whether the catalog item variant is published.
             */
            published?: boolean | null;
            /**
             * Date and time when the catalog item  variant was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created?: string | null;
            /**
             * Date and time when the catalog item variant was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            updated?: string | null;
        };
        relationships?: {
            item?: {
                data?: {
                    type: CatalogItemEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogCategoryCreateQueryResourceObject = {
    type: CatalogCategoryEnum;
    attributes: {
        /**
         * The ID of the catalog category in an external system.
         */
        external_id: string;
        /**
         * The name of the catalog category.
         */
        name: string;
        /**
         * The integration type. Currently only "$custom" is supported.
         */
        integration_type?: '$custom';
        /**
         * The type of catalog. Currently only "$default" is supported.
         */
        catalog_type?: string | null;
    };
    relationships?: {
        items?: {
            data?: Array<{
                type: CatalogItemEnum;
                /**
                 * A list of catalog item IDs that are in the given category.
                 */
                id: string;
            }>;
        };
    };
};
type CatalogCategoryCreateQuery = {
    data: CatalogCategoryCreateQueryResourceObject;
};
type PostCatalogCategoryResponse = {
    data: {
        type: CatalogCategoryEnum;
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
        attributes: {
            /**
             * The ID of the catalog category in an external system.
             */
            external_id?: string | null;
            /**
             * The name of the catalog category.
             */
            name?: string | null;
            /**
             * Date and time when the catalog category was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            updated?: string | null;
        };
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CouponCodeCreateJobCreateQueryResourceObject = {
    type: CouponCodeBulkCreateJobEnum;
    attributes: {
        /**
         * Array of coupon codes to create.
         */
        'coupon-codes': {
            data: Array<CouponCodeCreateQueryResourceObject>;
        };
    };
};
type CouponCodeCreateJobCreateQuery = {
    data: CouponCodeCreateJobCreateQueryResourceObject;
};
type PostCouponCodeCreateJobResponse = {
    data: {
        type: CouponCodeBulkCreateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            'coupon-codes'?: {
                data?: Array<{
                    type: CouponCodeEnum;
                    /**
                     * IDs of the created coupon codes.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogItemCategoryOp = {
    data: Array<{
        type: CatalogCategoryEnum;
        /**
         * A list of catalog category IDs representing the categories the item is in
         */
        id: string;
    }>;
};
type ProfileIdentifierDtoResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
    };
};
type BackInStockSubscriptionEnum = 'back-in-stock-subscription';
type ServerBisSubscriptionCreateQueryResourceObject = {
    type: BackInStockSubscriptionEnum;
    attributes: {
        /**
         * The channel(s) through which the profile would like to receive the back in stock notification. This can be leveraged within a back in stock flow to notify the subscriber through their preferred channel(s).
         */
        channels: Array<'EMAIL' | 'PUSH' | 'SMS' | 'WHATSAPP'>;
        profile?: {
            data: ProfileIdentifierDtoResourceObject;
        } | null;
    };
    relationships: {
        variant: {
            data?: {
                type: CatalogVariantEnum;
                /**
                 * The catalog variant ID for which the profile is subscribing to back in stock notifications. This ID is made up of the integration type, catalog ID, and and the external ID of the variant like so: `integrationType:::catalogId:::externalId`. If the integration you are using is not set up for multi-catalog storage, the 'catalogId' will be `$default`. For Shopify `$shopify:::$default:::33001893429341`
                 */
                id: string;
            };
        };
    };
};
type ServerBisSubscriptionCreateQuery = {
    data: ServerBisSubscriptionCreateQueryResourceObject;
};
type MetricCreateQueryResourceObject = {
    type: MetricEnum;
    attributes: {
        /**
         * Name of the event. Must be less than 128 characters.
         */
        name: string;
        /**
         * This is for advanced usage. For api requests, this should use the default, which is set to api.
         */
        service?: string | null;
    };
};
type ProfileMetaPatchProperties = {
    /**
     * Append a simple value or values to this property array
     */
    append?: {
        [key: string]: unknown;
    } | null;
    /**
     * Remove a simple value or values from this property array
     */
    unappend?: {
        [key: string]: unknown;
    } | null;
    /**
     * Remove a key or keys (and their values) completely from properties
     */
    unset?: string | Array<string> | null;
};
type OnsiteProfileMeta = {
    patch_properties?: ProfileMetaPatchProperties;
};
type EventProfileCreateQueryResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        anonymous_id?: string | null;
        /**
         * Also known as the `exchange_id`, this is an encrypted identifier used for identifying a
         * profile by Klaviyo's web tracking.
         *
         * You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.
         */
        _kx?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
        meta?: OnsiteProfileMeta;
    };
};
type EventCreateQueryV2ResourceObject = {
    type: EventEnum;
    attributes: {
        /**
         * Properties of this event (must not exceed 400 properties). The size of the event payload must not exceed 5 MB,
         * and each string cannot be larger than 100 KB. For a full list of data limits on event payloads,
         * see [Limitations](https://developers.klaviyo.com/en/reference/events_api_overview#limitations).
         *
         * Note any top-level property that is not an object can be
         * used to create segments. The `$extra` property records any
         * non-segmentable values that can be referenced later, e.g., HTML templates are
         * useful on a segment but are not used to create a segment.
         */
        properties: {
            [key: string]: unknown;
        };
        /**
         * When this event occurred. By default, the time the request was received will be used.
         * The time is truncated to the second. The time must be after the year 2000 and can only
         * be up to 1 year in the future.
         */
        time?: string | null;
        /**
         * A numeric, monetary value to associate with this event. For example, the dollar amount of a purchase.
         */
        value?: number | null;
        /**
         * The ISO 4217 currency code of the value associated with the event.
         */
        value_currency?: string | null;
        /**
         * A unique identifier for an event. If the unique_id is repeated for the same
         * profile and metric, only the first processed event will be recorded. If this is not
         * present, this will use the time to the second. Using the default, this limits only one
         * event per profile per second.
         */
        unique_id?: string | null;
        metric: {
            data: MetricCreateQueryResourceObject;
        };
        profile: {
            data: EventProfileCreateQueryResourceObject;
        };
    };
};
type EventCreateQueryV2 = {
    data: EventCreateQueryV2ResourceObject;
};
type OnsiteProfileCreateQueryResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        anonymous_id?: string | null;
        /**
         * Also known as the `exchange_id`, this is an encrypted identifier used for identifying a
         * profile by Klaviyo's web tracking.
         *
         * You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.
         */
        _kx?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
    };
    meta?: OnsiteProfileMeta;
};
type BaseEventCreateQueryBulkEntryResourceObject = {
    type: EventEnum;
    attributes: {
        /**
         * Properties of this event (must not exceed 400 properties). The size of the event payload must not exceed 5 MB,
         * and each string cannot be larger than 100 KB. For a full list of data limits on event payloads,
         * see [Limitations](https://developers.klaviyo.com/en/reference/events_api_overview#limitations).
         *
         * Note any top-level property that is not an object can be
         * used to create segments. The `$extra` property records any
         * non-segmentable values that can be referenced later, e.g., HTML templates are
         * useful on a segment but are not used to create a segment.
         */
        properties: {
            [key: string]: unknown;
        };
        /**
         * When this event occurred. By default, the time the request was received will be used.
         * The time is truncated to the second. The time must be after the year 2000 and can only
         * be up to 1 year in the future.
         */
        time?: string | null;
        /**
         * A numeric, monetary value to associate with this event. For example, the dollar amount of a purchase.
         */
        value?: number | null;
        /**
         * The ISO 4217 currency code of the value associated with the event.
         */
        value_currency?: string | null;
        metric: {
            data: MetricCreateQueryResourceObject;
        };
        /**
         * A unique identifier for an event. If a unique_id is repeated for the same profile and metric,
         * the request will fail and no events will be processed. If this field is not
         * present, this field will use the time to the second. Using the default, this limits only one
         * event per profile per second.
         */
        unique_id?: string | null;
    };
};
type EventBulkCreateEnum = 'event-bulk-create';
type EventsBulkCreateQueryResourceObject = {
    type: EventBulkCreateEnum;
    attributes: {
        profile: {
            data: OnsiteProfileCreateQueryResourceObject;
        };
        events: {
            data: Array<BaseEventCreateQueryBulkEntryResourceObject>;
        };
    };
};
type EventBulkCreateJobEnum = 'event-bulk-create-job';
type EventsBulkCreateJobResourceObject = {
    type: EventBulkCreateJobEnum;
    attributes: {
        'events-bulk-create': {
            data: Array<EventsBulkCreateQueryResourceObject>;
        };
    };
};
type EventsBulkCreateJob = {
    data: EventsBulkCreateJobResourceObject;
};
type MetricAggregateEnum = 'metric-aggregate';
type MetricAggregateQueryResourceObject = {
    type: MetricAggregateEnum;
    attributes: {
        /**
         * The metric ID used in the aggregation.
         */
        metric_id: string;
        /**
         * Optional pagination cursor to iterate over large result sets
         */
        page_cursor?: string;
        /**
         * Measurement key, e.g. `unique`, `sum_value`, `count`
         */
        measurements: Array<'count' | 'sum_value' | 'unique'>;
        /**
         * Aggregation interval, e.g. "hour", "day", "week", "month"
         */
        interval?: 'day' | 'hour' | 'month' | 'week';
        /**
         * Alter the maximum number of returned rows in a single page of aggregation results
         */
        page_size?: number | null;
        /**
         * Optional attribute(s) used for partitioning by the aggregation function
         */
        by?: Array<'$attributed_channel' | '$attributed_flow' | '$attributed_message' | '$attributed_variation' | '$campaign_channel' | '$flow' | '$flow_channel' | '$message' | '$message_send_cohort' | '$usage_amount' | '$value_currency' | '$variation' | '$variation_send_cohort' | 'Bot Click' | 'Bounce Type' | 'Campaign Name' | 'Client Canonical' | 'Client Name' | 'Client Type' | 'Email Domain' | 'Failure Source' | 'Failure Type' | 'From Number' | 'From Phone Region' | 'Inbox Provider' | 'List' | 'Message Name' | 'Message Type' | 'Method' | 'Segment Count' | 'Subject' | 'To Number' | 'To Phone Region' | 'URL' | 'form_id'> | null;
        /**
         * Provide fields to limit the returned data
         */
        return_fields?: Array<string> | null;
        /**
         * List of filters, must include time range using ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
         * These filters follow a similar format to those in `GET` requests, the primary difference is that this endpoint asks for a list.
         * The time range can be filtered by providing a `greater-or-equal` and a `less-than` filter on the `datetime` field.
         */
        filter: Array<string>;
        /**
         * The timezone used for processing the query, e.g. `'America/New_York'`.
         * This field is validated against a list of common timezones from the [IANA Time Zone Database](https://www.iana.org/time-zones).
         * While most are supported, a few notable exceptions are `Factory`, `Europe/Kyiv` and `Pacific/Kanton`. This field is case-sensitive.
         */
        timezone?: string | null;
        /**
         * Provide a sort key (e.g. -$message)
         */
        sort?: '$attributed_channel' | '-$attributed_channel' | '$attributed_flow' | '-$attributed_flow' | '$attributed_message' | '-$attributed_message' | '$attributed_variation' | '-$attributed_variation' | '$campaign_channel' | '-$campaign_channel' | '$flow' | '-$flow' | '$flow_channel' | '-$flow_channel' | '$message' | '-$message' | '$message_send_cohort' | '-$message_send_cohort' | '$usage_amount' | '-$usage_amount' | '$value_currency' | '-$value_currency' | '$variation' | '-$variation' | '$variation_send_cohort' | '-$variation_send_cohort' | 'Bot Click' | '-Bot Click' | 'Bounce Type' | '-Bounce Type' | 'Campaign Name' | '-Campaign Name' | 'Client Canonical' | '-Client Canonical' | 'Client Name' | '-Client Name' | 'Client Type' | '-Client Type' | 'Email Domain' | '-Email Domain' | 'Failure Source' | '-Failure Source' | 'Failure Type' | '-Failure Type' | 'From Number' | '-From Number' | 'From Phone Region' | '-From Phone Region' | 'Inbox Provider' | '-Inbox Provider' | 'List' | '-List' | 'Message Name' | '-Message Name' | 'Message Type' | '-Message Type' | 'Method' | '-Method' | 'Segment Count' | '-Segment Count' | 'Subject' | '-Subject' | 'To Number' | '-To Number' | 'To Phone Region' | '-To Phone Region' | 'URL' | '-URL' | 'count' | '-count' | 'form_id' | '-form_id' | 'sum_value' | '-sum_value' | 'unique' | '-unique';
    };
};
type MetricAggregateQuery = {
    data: MetricAggregateQueryResourceObject;
};
type MetricAggregateRowDto = {
    /**
     * List of dimensions associated with this set of measurements
     */
    dimensions: Array<string>;
    /**
     * Dictionary of measurement_key, values
     */
    measurements: {
        [key: string]: unknown;
    };
};
type PostMetricAggregateResponse = {
    data: {
        type: MetricAggregateEnum;
        /**
         * Ephemeral ID associated with the aggregation query
         */
        id: string;
        attributes: {
            /**
             * The dates of the query range
             */
            dates: Array<string>;
            /**
             * Aggregation result data
             */
            data: Array<MetricAggregateRowDto>;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ListCreateQueryResourceObject = {
    type: ListEnum;
    attributes: {
        /**
         * A helpful name to label the list
         */
        name: string;
        /**
         * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'. If not provided, uses account default.
         */
        opt_in_process?: 'double_opt_in' | 'single_opt_in';
    };
};
type ListCreateQuery = {
    data: ListCreateQueryResourceObject;
};
type PostListCreateResponse = {
    data: {
        type: ListEnum;
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * A helpful name to label the list
             */
            name?: string | null;
            /**
             * Date and time when the list was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * Date and time when the list was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
            /**
             * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'.
             */
            opt_in_process?: 'double_opt_in' | 'single_opt_in';
        };
        relationships?: {
            profiles?: {
                data?: Array<{
                    type: ProfileEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ListMembersAddQuery = {
    data: Array<{
        type: ProfileEnum;
        id: string;
    }>;
};
type SegmentCreateQueryResourceObject = {
    type: SegmentEnum;
    attributes: {
        name: string;
        definition: SegmentDefinition;
        is_starred?: boolean | null;
    };
};
type SegmentCreateQuery = {
    data: SegmentCreateQueryResourceObject;
};
type PostSegmentCreateResponse = {
    data: {
        type: SegmentEnum;
        id: string;
        attributes: {
            /**
             * A helpful name to label the segment
             */
            name?: string | null;
            definition?: SegmentDefinition;
            /**
             * Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
            /**
             * Whether the segment is active. Inactive segments are not processed and their membership does not update.
             */
            is_active: boolean;
            is_processing: boolean;
            is_starred: boolean;
        };
        relationships?: {
            profiles?: {
                data?: Array<{
                    type: ProfileEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfileCreateQueryResourceObject = {
    type: ProfileEnum;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
    };
};
type ProfileCreateQuery = {
    data: ProfileCreateQueryResourceObject;
};
type PostProfileResponse = {
    data: {
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id?: string | null;
        attributes: {
            /**
             * Individual's email address
             */
            email?: string | null;
            /**
             * Individual's phone number in E.164 format
             */
            phone_number?: string | null;
            /**
             * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
             */
            external_id?: string | null;
            /**
             * Individual's first name
             */
            first_name?: string | null;
            /**
             * Individual's last name
             */
            last_name?: string | null;
            /**
             * Name of the company or organization within the company for whom the individual works
             */
            organization?: string | null;
            /**
             * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
             */
            locale?: string | null;
            /**
             * Individual's job title
             */
            title?: string | null;
            /**
             * URL pointing to the location of a profile image
             */
            image?: string | null;
            /**
             * Date and time when the profile was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * Date and time when the profile was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
            /**
             * Date and time of the most recent event the triggered an update to the profile, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            last_event_date?: string | null;
            location?: ProfileLocation;
            /**
             * An object containing key/value pairs for any custom properties assigned to this profile
             */
            properties?: {
                [key: string]: unknown;
            } | null;
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            segments?: {
                data?: Array<{
                    type: SegmentEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                data?: Array<{
                    type: PushTokenEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfileMeta = {
    patch_properties?: ProfileMetaPatchProperties;
};
type ProfileUpsertQueryResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Also known as the `exchange_id`, this is an encrypted identifier used for identifying a
         * profile by Klaviyo's web tracking.
         *
         * You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.
         */
        _kx?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
    };
    meta?: ProfileMeta;
};
type ProfileImportJobCreateQueryResourceObject = {
    type: ProfileBulkImportJobEnum;
    attributes: {
        /**
         * Array of profiles to create or update
         */
        profiles: {
            data: Array<ProfileUpsertQueryResourceObject>;
        };
    };
    relationships?: {
        lists?: {
            data?: Array<{
                type: ListEnum;
                /**
                 * Optional list to add the profiles to
                 */
                id: string;
            }>;
        };
    };
};
type ProfileImportJobCreateQuery = {
    data: ProfileImportJobCreateQueryResourceObject;
};
type PostProfileImportJobResponse = {
    data: {
        type: ProfileBulkImportJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
            /**
             * Date and time the job started processing in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            started_at?: string | null;
        };
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    /**
                     * List to add the profiles to
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            profiles?: {
                data?: Array<{
                    type: ProfileEnum;
                    /**
                     * IDs of the created/updated profiles
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'import-errors'?: {
                data?: Array<{
                    type: ImportErrorEnum;
                    /**
                     * Errors encountering during import
                     */
                    id: string;
                }>;
                links?: OnlyRelatedLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfileUpsertQuery = {
    data: ProfileUpsertQueryResourceObject;
};
type ProfileMergeEnum = 'profile-merge';
type ProfileMergeQueryResourceObject = {
    type: ProfileMergeEnum;
    /**
     * The ID of the destination profile to merge into
     */
    id: string;
    relationships: {
        profiles: {
            data?: Array<{
                type: ProfileEnum;
                /**
                 * The ID of a source profile to merge into the destination profile
                 */
                id: string;
            }>;
        };
    };
};
type ProfileMergeQuery = {
    data: ProfileMergeQueryResourceObject;
};
type PostProfileMergeResponse = {
    data: {
        type: ProfileEnum;
        /**
         * The ID of the destination profile that was merged into
         */
        id: string;
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type FlowCreateQueryResourceObject = {
    type: FlowEnum;
    attributes: {
        /**
         * The name of the Flow
         */
        name: string;
        definition: FlowDefinition;
    };
};
type FlowCreateQuery = {
    data: FlowCreateQueryResourceObject;
};
type PostFlowV2Response = {
    data: {
        type: FlowEnum;
        id: string;
        attributes: {
            name?: string | null;
            status?: string | null;
            archived?: boolean | null;
            created?: string | null;
            updated?: string | null;
            /**
             * Corresponds to the object which triggered the flow.
             */
            trigger_type?: 'Added to List' | 'Date Based' | 'Low Inventory' | 'Metric' | 'Price Drop' | 'Unconfigured';
            definition?: FlowDefinition;
        };
        relationships?: {
            'flow-actions'?: {
                data?: Array<{
                    type: FlowActionEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type SmsContentCreate = {
    /**
     * The message body
     */
    body?: string | null;
};
type SmsMessageDefinitionCreate = {
    channel: SmsEnum;
    content?: SmsContentCreate;
    render_options?: RenderOptions;
};
type MobilePushContentCreate = {
    /**
     * The title of the message
     */
    title?: string | null;
    /**
     * The message body
     */
    body: string;
    /**
     * The dynamic image to be used in the push notification
     */
    dynamic_image?: string | null;
};
type MobilePushMessageStandardDefinitionCreate = {
    channel: MobilePushEnum;
    content: MobilePushContentCreate;
    /**
     * The key-value pairs to be sent with the push notification
     */
    kv_pairs?: {
        [key: string]: unknown;
    } | null;
    options?: MobilePushOptions;
    notification_type?: StandardEnum;
};
type MobilePushMessageSilentDefinitionCreate = {
    channel: MobilePushEnum;
    /**
     * The key-value pairs to be sent with the push notification
     */
    kv_pairs?: {
        [key: string]: unknown;
    } | null;
    notification_type?: SilentEnum;
};
type CampaignMessageCreateQueryResourceObject = {
    type: CampaignMessageEnum;
    attributes: {
        definition: EmailMessageDefinition | SmsMessageDefinitionCreate | MobilePushMessageStandardDefinitionCreate | MobilePushMessageSilentDefinitionCreate;
    };
    relationships?: {
        image?: {
            data?: {
                type: ImageEnum;
                /**
                 * The associated image for mobile_push messages
                 */
                id: string;
            };
        };
    };
};
type CampaignCreateQueryResourceObject = {
    type: CampaignEnum;
    attributes: {
        /**
         * The campaign name
         */
        name: string;
        audiences: Audiences;
        /**
         * The send strategy the campaign will send with. Defaults to 'Immediate' send strategy.
         */
        send_strategy?: StaticSendStrategy | ThrottledSendStrategy | ImmediateSendStrategy | SmartSendTimeStrategy | null;
        /**
         * Options to use when sending a campaign
         */
        send_options?: EmailSendOptions | SmsSendOptions | PushSendOptions | null;
        /**
         * The tracking options associated with the campaign
         */
        tracking_options?: CampaignsEmailTrackingOptions | CampaignsSmsTrackingOptions | null;
        /**
         * The message(s) associated with the campaign
         */
        'campaign-messages': {
            data: Array<CampaignMessageCreateQueryResourceObject>;
        };
    };
};
type CampaignCreateQuery = {
    data: CampaignCreateQueryResourceObject;
};
type PostCampaignResponse = {
    data: {
        type: CampaignEnum;
        /**
         * The campaign ID
         */
        id: string;
        attributes: {
            /**
             * The campaign name
             */
            name: string;
            /**
             * The current status of the campaign
             */
            status: 'Adding Recipients' | 'Cancelled' | 'Cancelled: Account Disabled' | 'Cancelled: Internal Error' | 'Cancelled: No Recipients' | 'Cancelled: Smart Sending' | 'Draft' | 'Preparing to schedule' | 'Preparing to send' | 'Queued without Recipients' | 'Scheduled' | 'Sending' | 'Sending Segments' | 'Sent' | 'Unknown' | 'Variations Sent';
            /**
             * Whether the campaign has been archived or not
             */
            archived: boolean;
            audiences: Audiences;
            /**
             * Options to use when sending a campaign
             */
            send_options: EmailSendOptions | SmsSendOptions | PushSendOptions;
            /**
             * The tracking options associated with the campaign
             */
            tracking_options?: CampaignsEmailTrackingOptions | CampaignsSmsTrackingOptions | null;
            /**
             * The send strategy the campaign will send with
             */
            send_strategy: StaticSendStrategy | SmartSendTimeStrategy | ThrottledSendStrategy | ImmediateSendStrategy | AbTestSendStrategy | UnsupportedSendStrategy;
            /**
             * The datetime when the campaign was created
             */
            created_at: string;
            /**
             * The datetime when the campaign was scheduled for future sending
             */
            scheduled_at?: string | null;
            /**
             * The datetime when the campaign was last updated by a user or the system
             */
            updated_at: string;
            /**
             * The datetime when the campaign will be / was sent or None if not yet scheduled by a send_job.
             */
            send_time?: string | null;
        };
        relationships?: {
            'campaign-messages'?: {
                data?: Array<{
                    type: CampaignMessageEnum;
                    /**
                     * The message(s) associated with the campaign
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CampaignCloneQueryResourceObject = {
    type: CampaignEnum;
    /**
     * The campaign ID to be cloned
     */
    id: string;
    attributes: {
        /**
         * The name for the new cloned campaign
         */
        new_name?: string | null;
    };
};
type CampaignCloneQuery = {
    data: CampaignCloneQueryResourceObject;
};
type CampaignMessageAssignTemplateQueryResourceObject = {
    type: CampaignMessageEnum;
    /**
     * The message ID to be assigned to
     */
    id: string;
    relationships: {
        template: {
            data?: {
                type: TemplateEnum;
                /**
                 * The template ID to assign
                 */
                id: string;
            };
        };
    };
};
type CampaignMessageAssignTemplateQuery = {
    data: CampaignMessageAssignTemplateQueryResourceObject;
};
type EmailContentSubObject = {
    /**
     * The subject of the message
     */
    subject?: string | null;
    /**
     * Preview text associated with the message
     */
    preview_text?: string | null;
    /**
     * The email the message should be sent from
     */
    from_email?: string | null;
    /**
     * The label associated with the from_email
     */
    from_label?: string | null;
    /**
     * Optional Reply-To email address
     */
    reply_to_email?: string | null;
    /**
     * Optional CC email address
     */
    cc_email?: string | null;
    /**
     * Optional BCC email address
     */
    bcc_email?: string | null;
};
type SmsContentSubObject = {
    /**
     * The message body
     */
    body?: string | null;
    /**
     * URL for included media
     */
    media_url?: string | null;
};
type SendTimeSubObject = {
    /**
     * The datetime that the message is to be sent
     */
    datetime: string;
    /**
     * Whether that datetime is to be a local datetime for the recipient
     */
    is_local: boolean;
};
type RenderOptionsSubObject = {
    shorten_links?: boolean | null;
    add_org_prefix?: boolean | null;
    add_info_link?: boolean | null;
    add_opt_out_language?: boolean | null;
};
type PostCampaignMessageResponse = {
    data: {
        type: CampaignMessageEnum;
        /**
         * The message ID
         */
        id: string;
        attributes: {
            /**
             * The label or name on the message
             */
            label: string;
            /**
             * The channel the message is to be sent on
             */
            channel: string;
            /**
             * Additional attributes relating to the content of the message
             */
            content: EmailContentSubObject | SmsContentSubObject;
            /**
             * The list of appropriate Send Time Sub-objects associated with the message
             */
            send_times?: Array<SendTimeSubObject> | null;
            render_options?: RenderOptionsSubObject;
            /**
             * The datetime when the message was created
             */
            created_at?: string | null;
            /**
             * The datetime when the message was last updated
             */
            updated_at?: string | null;
        };
        relationships?: {
            campaign?: {
                data?: {
                    type: CampaignEnum;
                    /**
                     * The parent campaign id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            template?: {
                data?: {
                    type: TemplateEnum;
                    /**
                     * The associated template id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CampaignSendJobCreateQueryResourceObject = {
    type: CampaignSendJobEnum;
    /**
     * The ID of the campaign to send
     */
    id: string;
};
type CampaignSendJobCreateQuery = {
    data: CampaignSendJobCreateQueryResourceObject;
};
type PostCampaignSendJobResponse = {
    data: {
        type: CampaignSendJobEnum;
        /**
         * The ID of the campaign to send
         */
        id: string;
        attributes: {
            /**
             * The status of the send job
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CampaignRecipientEstimationJobCreateQueryResourceObject = {
    type: CampaignRecipientEstimationJobEnum;
    /**
     * The ID of the campaign to perform recipient estimation
     */
    id: string;
};
type CampaignRecipientEstimationJobCreateQuery = {
    data: CampaignRecipientEstimationJobCreateQueryResourceObject;
};
type PostCampaignRecipientEstimationJobResponse = {
    data: {
        type: CampaignRecipientEstimationJobEnum;
        /**
         * The ID of the campaign used for estimating recipients
         */
        id: string;
        attributes: {
            /**
             * The status of the recipient estimation job
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TemplateCreateQueryResourceObject = {
    type: TemplateEnum;
    attributes: {
        /**
         * The name of the template
         */
        name: string;
        /**
         * Restricted to CODE and USER_DRAGGABLE
         */
        editor_type: string;
        /**
         * The HTML contents of the template
         */
        html?: string | null;
        /**
         * The plaintext version of the template
         */
        text?: string | null;
        /**
         * The AMP version of the template. Requires AMP Email to be enabled to access in-app. Refer to the AMP Email setup guide at https://developers.klaviyo.com/en/docs/send_amp_emails_in_klaviyo
         */
        amp?: string | null;
    };
};
type TemplateCreateQuery = {
    data: TemplateCreateQueryResourceObject;
};
type PostTemplateResponse = {
    data: {
        type: TemplateEnum;
        /**
         * The ID of template
         */
        id: string;
        attributes: {
            /**
             * The name of the template
             */
            name: string;
            /**
             * `editor_type` has a fixed set of values:
             * * SYSTEM_DRAGGABLE: indicates a drag-and-drop editor template
             * * SIMPLE: A rich text editor template
             * * CODE: A custom HTML template
             * * USER_DRAGGABLE: A hybrid template, using custom HTML in the drag-and-drop editor
             */
            editor_type: string;
            /**
             * The rendered HTML of the template
             */
            html: string;
            /**
             * The template plain_text
             */
            text?: string | null;
            /**
             * The AMP version of the template. Requires AMP Email to be enabled to access in-app. Refer to the AMP Email setup guide at https://developers.klaviyo.com/en/docs/send_amp_emails_in_klaviyo
             */
            amp?: string | null;
            /**
             * The date the template was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * The date the template was updated in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TemplateRenderQueryResourceObject = {
    type: TemplateEnum;
    /**
     * The ID of template
     */
    id: string;
    attributes: {
        /**
         * The context for the template render. This must be a JSON object which has values for any tags used in the template. See [this doc](https://help.klaviyo.com/hc/en-us/articles/4408802648731) for more details.
         */
        context: {
            [key: string]: unknown;
        };
    };
};
type TemplateRenderQuery = {
    data: TemplateRenderQueryResourceObject;
};
type TemplateCloneQueryResourceObject = {
    type: TemplateEnum;
    /**
     * The ID of template to be cloned
     */
    id: string;
    attributes: {
        /**
         * The name of the template
         */
        name?: string | null;
    };
};
type TemplateCloneQuery = {
    data: TemplateCloneQueryResourceObject;
};
type CatalogItemCreateJobCreateQueryResourceObject = {
    type: CatalogItemBulkCreateJobEnum;
    attributes: {
        /**
         * Array of catalog items to create.
         */
        items: {
            data: Array<CatalogItemCreateQueryResourceObject>;
        };
    };
};
type CatalogItemCreateJobCreateQuery = {
    data: CatalogItemCreateJobCreateQueryResourceObject;
};
type PostCatalogItemCreateJobResponse = {
    data: {
        type: CatalogItemBulkCreateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the created catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogItemUpdateQueryResourceObject = {
    type: CatalogItemEnum;
    /**
     * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
    attributes: {
        /**
         * The title of the catalog item.
         */
        title?: string | null;
        /**
         * This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).
         */
        price?: number | null;
        /**
         * A description of the catalog item.
         */
        description?: string | null;
        /**
         * URL pointing to the location of the catalog item on your website.
         */
        url?: string | null;
        /**
         * URL pointing to the location of a full image of the catalog item.
         */
        image_full_url?: string | null;
        /**
         * URL pointing to the location of an image thumbnail of the catalog item
         */
        image_thumbnail_url?: string | null;
        /**
         * List of URLs pointing to the locations of images of the catalog item.
         */
        images?: Array<string> | null;
        /**
         * Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.
         */
        custom_metadata?: {
            [key: string]: unknown;
        } | null;
        /**
         * Boolean value indicating whether the catalog item is published.
         */
        published?: boolean | null;
    };
    relationships?: {
        categories?: {
            data?: Array<{
                type: CatalogCategoryEnum;
                /**
                 * A list of catalog category IDs representing the categories the item is in
                 */
                id: string;
            }>;
        };
    };
};
type CatalogItemUpdateJobCreateQueryResourceObject = {
    type: CatalogItemBulkUpdateJobEnum;
    attributes: {
        /**
         * Array of catalog items to update.
         */
        items: {
            data: Array<CatalogItemUpdateQueryResourceObject>;
        };
    };
};
type CatalogItemUpdateJobCreateQuery = {
    data: CatalogItemUpdateJobCreateQueryResourceObject;
};
type PostCatalogItemUpdateJobResponse = {
    data: {
        type: CatalogItemBulkUpdateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the updated catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogItemDeleteQueryResourceObject = {
    type: CatalogItemEnum;
    /**
     * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
};
type CatalogItemDeleteJobCreateQueryResourceObject = {
    type: CatalogItemBulkDeleteJobEnum;
    attributes: {
        /**
         * Array of catalog items to delete.
         */
        items: {
            data: Array<CatalogItemDeleteQueryResourceObject>;
        };
    };
};
type CatalogItemDeleteJobCreateQuery = {
    data: CatalogItemDeleteJobCreateQueryResourceObject;
};
type PostCatalogItemDeleteJobResponse = {
    data: {
        type: CatalogItemBulkDeleteJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    /**
                     * IDs of the deleted catalog items.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogVariantCreateJobCreateQueryResourceObject = {
    type: CatalogVariantBulkCreateJobEnum;
    attributes: {
        /**
         * Array of catalog variants to create.
         */
        variants: {
            data: Array<CatalogVariantCreateQueryResourceObject>;
        };
    };
};
type CatalogVariantCreateJobCreateQuery = {
    data: CatalogVariantCreateJobCreateQueryResourceObject;
};
type PostCatalogVariantCreateJobResponse = {
    data: {
        type: CatalogVariantBulkCreateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the created catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogVariantUpdateQueryResourceObject = {
    type: CatalogVariantEnum;
    /**
     * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
    attributes: {
        /**
         * The title of the catalog item variant.
         */
        title?: string | null;
        /**
         * A description of the catalog item variant.
         */
        description?: string | null;
        /**
         * The SKU of the catalog item variant.
         */
        sku?: string | null;
        /**
         * This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values:
         * `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock.
         * `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.
         */
        inventory_policy?: 0 | 1 | 2;
        /**
         * The quantity of the catalog item variant currently in stock.
         */
        inventory_quantity?: number | null;
        /**
         * This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).
         */
        price?: number | null;
        /**
         * URL pointing to the location of the catalog item variant on your website.
         */
        url?: string | null;
        /**
         * URL pointing to the location of a full image of the catalog item variant.
         */
        image_full_url?: string | null;
        /**
         * URL pointing to the location of an image thumbnail of the catalog item variant.
         */
        image_thumbnail_url?: string | null;
        /**
         * List of URLs pointing to the locations of images of the catalog item variant.
         */
        images?: Array<string> | null;
        /**
         * Flat JSON blob to provide custom metadata about the catalog item variant. May not exceed 100kb.
         */
        custom_metadata?: {
            [key: string]: unknown;
        } | null;
        /**
         * Boolean value indicating whether the catalog item variant is published.
         */
        published?: boolean | null;
    };
};
type CatalogVariantUpdateJobCreateQueryResourceObject = {
    type: CatalogVariantBulkUpdateJobEnum;
    attributes: {
        /**
         * Array of catalog variants to update.
         */
        variants: {
            data: Array<CatalogVariantUpdateQueryResourceObject>;
        };
    };
};
type CatalogVariantUpdateJobCreateQuery = {
    data: CatalogVariantUpdateJobCreateQueryResourceObject;
};
type PostCatalogVariantUpdateJobResponse = {
    data: {
        type: CatalogVariantBulkUpdateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the updated catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogVariantDeleteQueryResourceObject = {
    type: CatalogVariantEnum;
    /**
     * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
};
type CatalogVariantDeleteJobCreateQueryResourceObject = {
    type: CatalogVariantBulkDeleteJobEnum;
    attributes: {
        /**
         * Array of catalog variants to delete.
         */
        variants: {
            data: Array<CatalogVariantDeleteQueryResourceObject>;
        };
    };
};
type CatalogVariantDeleteJobCreateQuery = {
    data: CatalogVariantDeleteJobCreateQueryResourceObject;
};
type PostCatalogVariantDeleteJobResponse = {
    data: {
        type: CatalogVariantBulkDeleteJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    /**
                     * IDs of the deleted catalog variants.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogCategoryCreateJobCreateQueryResourceObject = {
    type: CatalogCategoryBulkCreateJobEnum;
    attributes: {
        /**
         * Array of catalog categories to create.
         */
        categories: {
            data: Array<CatalogCategoryCreateQueryResourceObject>;
        };
    };
};
type CatalogCategoryCreateJobCreateQuery = {
    data: CatalogCategoryCreateJobCreateQueryResourceObject;
};
type PostCatalogCategoryCreateJobResponse = {
    data: {
        type: CatalogCategoryBulkCreateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the created catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogCategoryUpdateQueryResourceObject = {
    type: CatalogCategoryEnum;
    /**
     * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
    attributes: {
        /**
         * The name of the catalog category.
         */
        name?: string | null;
    };
    relationships?: {
        items?: {
            data?: Array<{
                type: CatalogItemEnum;
                /**
                 * A list of catalog item IDs that are in the given category.
                 */
                id: string;
            }>;
        };
    };
};
type CatalogCategoryUpdateJobCreateQueryResourceObject = {
    type: CatalogCategoryBulkUpdateJobEnum;
    attributes: {
        /**
         * Array of catalog categories to update.
         */
        categories: {
            data: Array<CatalogCategoryUpdateQueryResourceObject>;
        };
    };
};
type CatalogCategoryUpdateJobCreateQuery = {
    data: CatalogCategoryUpdateJobCreateQueryResourceObject;
};
type PostCatalogCategoryUpdateJobResponse = {
    data: {
        type: CatalogCategoryBulkUpdateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the updated catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogCategoryDeleteQueryResourceObject = {
    type: CatalogCategoryEnum;
    /**
     * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
     */
    id: string;
};
type CatalogCategoryDeleteJobCreateQueryResourceObject = {
    type: CatalogCategoryBulkDeleteJobEnum;
    attributes: {
        /**
         * Array of catalog categories to delete.
         */
        categories: {
            data: Array<CatalogCategoryDeleteQueryResourceObject>;
        };
    };
};
type CatalogCategoryDeleteJobCreateQuery = {
    data: CatalogCategoryDeleteJobCreateQueryResourceObject;
};
type PostCatalogCategoryDeleteJobResponse = {
    data: {
        type: CatalogCategoryBulkDeleteJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * The total number of operations that have failed as part of the job.
             */
            failed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * Array of errors encountered during the processing of the job.
             */
            errors?: Array<ApiJobErrorPayload> | null;
            /**
             * Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            expires_at?: string | null;
        };
        relationships?: {
            categories?: {
                data?: Array<{
                    type: CatalogCategoryEnum;
                    /**
                     * IDs of the deleted catalog categories.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TagCreateQueryResourceObject = {
    type: TagEnum;
    attributes: {
        /**
         * The Tag name
         */
        name: string;
    };
    relationships?: {
        'tag-group'?: {
            data?: {
                type: TagGroupEnum;
                /**
                 * The ID of the Tag Group to associate the Tag with. If this field is not specified, the Tag will be associated with the company's Default Tag Group.
                 */
                id: string;
            };
        };
    };
};
type TagCreateQuery = {
    data: TagCreateQueryResourceObject;
};
type PostTagResponse = {
    data: {
        type: TagEnum;
        /**
         * The Tag ID
         */
        id: string;
        attributes: {
            /**
             * The Tag name
             */
            name: string;
        };
        relationships?: {
            'tag-group'?: {
                data?: {
                    type: TagGroupEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            segments?: {
                data?: Array<{
                    type: SegmentEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            campaigns?: {
                data?: Array<{
                    type: CampaignEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            flows?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TagGroupCreateQueryResourceObject = {
    type: TagGroupEnum;
    attributes: {
        /**
         * The Tag Group name
         */
        name: string;
        exclusive?: boolean | null;
    };
};
type TagGroupCreateQuery = {
    data: TagGroupCreateQueryResourceObject;
};
type PostTagGroupResponse = {
    data: {
        type: TagGroupEnum;
        /**
         * The Tag Group ID
         */
        id: string;
        attributes: {
            /**
             * The Tag Group name
             */
            name: string;
            /**
             * If a tag group is non-exclusive, any given related resource (campaign, flow, etc.) can be linked to multiple tags from that tag group. If a tag group is exclusive, any given related resource can only be linked to one tag from that tag group.
             */
            exclusive: boolean;
            /**
             * Every company automatically has one Default Tag Group. The Default Tag Group cannot be deleted, and no other Default Tag Groups can be created. This value is true for the Default Tag Group and false for all other Tag Groups.
             */
            default: boolean;
        };
        relationships?: {
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TagFlowOp = {
    data: Array<{
        type: FlowEnum;
        /**
         * The IDs of the flows to link or unlink with the given Tag ID
         */
        id: string;
    }>;
};
type TagCampaignOp = {
    data: Array<{
        type: CampaignEnum;
        /**
         * The IDs of the campaigns to link or unlink with the given Tag ID
         */
        id: string;
    }>;
};
type TagListOp = {
    data: Array<{
        type: ListEnum;
        /**
         * The IDs of the lists to link or unlink with the given Tag ID
         */
        id: string;
    }>;
};
type TagSegmentOp = {
    data: Array<{
        type: SegmentEnum;
        /**
         * The IDs of the segments to link or unlink with the given Tag ID
         */
        id: string;
    }>;
};
type WebhookCreateQueryResourceObject = {
    type: WebhookEnum;
    attributes: {
        /**
         * A name for the webhook.
         */
        name: string;
        /**
         * A description for the webhook.
         */
        description?: string | null;
        /**
         * A url to send webhook calls to. Must be https.
         */
        endpoint_url: string;
        /**
         * A secret key, that will be used for webhook request signing.
         */
        secret_key: string;
    };
    relationships: {
        'webhook-topics': {
            data?: Array<{
                type: WebhookTopicEnum;
                /**
                 * A list of topics to subscribe to.
                 */
                id: string;
            }>;
        };
    };
};
type WebhookCreateQuery = {
    data: WebhookCreateQueryResourceObject;
};
type PostWebhookResponse = {
    data: {
        type: WebhookEnum;
        /**
         * The ID of the webhook.
         */
        id: string;
        attributes: {
            /**
             * A name for the webhook.
             */
            name: string;
            /**
             * A description for the webhook.
             */
            description?: string | null;
            /**
             * The url to send webhook requests to, truncated for security.
             */
            endpoint_url: string;
            /**
             * Is the webhook enabled.
             */
            enabled: boolean;
            /**
             * Date and time when the webhook was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created_at?: string | null;
            /**
             * Date and time when the webhook was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated_at?: string | null;
        };
        relationships?: {
            'webhook-topics'?: {
                data?: Array<{
                    type: WebhookTopicEnum;
                    /**
                     * A topic the webhook is subscribed to.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfileSuppressionCreateQueryResourceObject = {
    type: ProfileEnum;
    attributes: {
        /**
         * The email of the profile to suppress.
         */
        email: string;
    };
};
type SuppressionCreateJobCreateQueryResourceObject = {
    type: ProfileSuppressionBulkCreateJobEnum;
    attributes: {
        /**
         * The profile(s) to create suppressions for.
         */
        profiles?: {
            data: Array<ProfileSuppressionCreateQueryResourceObject>;
        } | null;
    };
    relationships?: {
        list?: {
            data?: {
                type: ListEnum;
                /**
                 * Suppress all profiles in this list
                 */
                id: string;
            };
        };
        segment?: {
            data?: {
                type: SegmentEnum;
                /**
                 * Suppress all profiles in this segment
                 */
                id: string;
            };
        };
    };
};
type SuppressionCreateJobCreateQuery = {
    data: SuppressionCreateJobCreateQueryResourceObject;
};
type PostBulkProfileSuppressionsCreateJobResponse = {
    data: {
        type: ProfileSuppressionBulkCreateJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * The total number of profiles that have been skipped as part of the job.
             */
            skipped_count?: number | null;
        };
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    /**
                     * Suppress/Unsuppress all profiles in this list
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            segments?: {
                data?: Array<{
                    type: SegmentEnum;
                    /**
                     * Suppress/Unsuppress all profiles in this segment
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfileSuppressionDeleteQueryResourceObject = {
    type: ProfileEnum;
    attributes: {
        /**
         * The email of the profile to unsuppress.
         */
        email: string;
    };
};
type SuppressionDeleteJobCreateQueryResourceObject = {
    type: ProfileSuppressionBulkDeleteJobEnum;
    attributes: {
        /**
         * The profile(s) to remove suppressions for.
         */
        profiles?: {
            data: Array<ProfileSuppressionDeleteQueryResourceObject>;
        } | null;
    };
    relationships?: {
        list?: {
            data?: {
                type: ListEnum;
                /**
                 * The list to pull the profiles to remove suppressions from
                 */
                id: string;
            };
        };
        segment?: {
            data?: {
                type: SegmentEnum;
                /**
                 * The segment to pull the profiles to remove suppressions from
                 */
                id: string;
            };
        };
    };
};
type SuppressionDeleteJobCreateQuery = {
    data: SuppressionDeleteJobCreateQueryResourceObject;
};
type PostBulkProfileSuppressionsRemoveJobResponse = {
    data: {
        type: ProfileSuppressionBulkDeleteJobEnum;
        /**
         * Unique identifier for retrieving the job. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * Status of the asynchronous job.
             */
            status: 'cancelled' | 'complete' | 'processing' | 'queued';
            /**
             * The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created_at: string;
            /**
             * The total number of operations to be processed by the job. See `completed_count` for the job's current progress.
             */
            total_count: number;
            /**
             * The total number of operations that have been completed by the job.
             */
            completed_count?: number | null;
            /**
             * Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            completed_at?: string | null;
            /**
             * The total number of profiles that have been skipped as part of the job.
             */
            skipped_count?: number | null;
        };
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    /**
                     * Suppress/Unsuppress all profiles in this list
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            segments?: {
                data?: Array<{
                    type: SegmentEnum;
                    /**
                     * Suppress/Unsuppress all profiles in this segment
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type SubscriptionParameters = {
    /**
     * The Consent status to be set as part of the subscribe call. Currently supports "SUBSCRIBED".
     */
    consent: 'SUBSCRIBED';
    /**
     * The timestamp of when the profile's consent was gathered. This should only be used when syncing over historical consent info to Klaviyo; if the `historical_import` flag is not included, providing any value for this field will raise an error.
     */
    consented_at?: string | null;
};
type EmailSubscriptionParameters = {
    marketing: SubscriptionParameters;
};
type SmsSubscriptionParameters = {
    marketing?: SubscriptionParameters;
    transactional?: SubscriptionParameters;
};
type WhatsAppSubscriptionParameters = {
    marketing?: SubscriptionParameters;
    transactional?: SubscriptionParameters;
};
type SubscriptionChannels = {
    email?: EmailSubscriptionParameters;
    sms?: SmsSubscriptionParameters;
    whatsapp?: WhatsAppSubscriptionParameters;
};
type ProfileSubscriptionCreateQueryResourceObject = {
    type: ProfileEnum;
    /**
     * The ID of the profile to subscribe. If provided, this will be used to perform the lookup.
     */
    id?: string | null;
    attributes: {
        /**
         * The email address relating to the email subscription included in `subscriptions`. If the email channel is omitted from `subscriptions`, this will be set on the profile.
         */
        email?: string | null;
        /**
         * The phone number relating to the SMS subscription included in `subscriptions`. If the SMS channel is omitted from `subscriptions`, this will be set on the profile. This must be in E.164 format.
         */
        phone_number?: string | null;
        subscriptions: SubscriptionChannels;
        /**
         * The profile's date of birth. This field is required to update SMS consent for accounts using age-gating: https://help.klaviyo.com/hc/en-us/articles/17252552814875
         */
        age_gated_date_of_birth?: string | null;
    };
};
type ProfileSubscriptionBulkCreateJobEnum = 'profile-subscription-bulk-create-job';
type SubscriptionCreateJobCreateQueryResourceObject = {
    type: ProfileSubscriptionBulkCreateJobEnum;
    attributes: {
        /**
         * A custom method detail or source to store on the consent records.
         */
        custom_source?: string | null;
        /**
         * The profile(s) to subscribe
         */
        profiles: {
            data: Array<ProfileSubscriptionCreateQueryResourceObject>;
        };
        /**
         * Whether this subscription is part of a historical import. If true, the consented_at field must be provided for each profile.
         */
        historical_import?: boolean | null;
    };
    relationships?: {
        list?: {
            data?: {
                type: ListEnum;
                /**
                 * The list to add the newly subscribed profiles to
                 */
                id: string;
            };
        };
    };
};
type SubscriptionCreateJobCreateQuery = {
    data: SubscriptionCreateJobCreateQueryResourceObject;
};
type UnsubscriptionParameters = {
    /**
     * The Consent status to be set as part of the unsubscribe call. Currently supports "UNSUBSCRIBED".
     */
    consent: 'UNSUBSCRIBED';
};
type EmailUnsubscriptionParameters = {
    marketing: UnsubscriptionParameters;
};
type SmsUnsubscriptionParameters = {
    marketing?: UnsubscriptionParameters;
    transactional?: UnsubscriptionParameters;
};
type WhatsAppUnsubscriptionParameters = {
    marketing?: UnsubscriptionParameters;
    transactional?: UnsubscriptionParameters;
    conversational?: UnsubscriptionParameters;
};
type UnsubscriptionChannels = {
    email?: EmailUnsubscriptionParameters;
    sms?: SmsUnsubscriptionParameters;
    whatsapp?: WhatsAppUnsubscriptionParameters;
};
type ProfileSubscriptionDeleteQueryResourceObject = {
    type: ProfileEnum;
    attributes: {
        /**
         * The email address to unsubscribe.
         */
        email?: string | null;
        /**
         * The phone number to unsubscribe. This must be in E.164 format.
         */
        phone_number?: string | null;
        subscriptions: UnsubscriptionChannels;
    };
};
type ProfileSubscriptionBulkDeleteJobEnum = 'profile-subscription-bulk-delete-job';
type SubscriptionDeleteJobCreateQueryResourceObject = {
    type: ProfileSubscriptionBulkDeleteJobEnum;
    attributes: {
        /**
         * The profile(s) to unsubscribe
         */
        profiles: {
            data: Array<ProfileSubscriptionDeleteQueryResourceObject>;
        };
    };
    relationships?: {
        list?: {
            data?: {
                type: ListEnum;
                /**
                 * The list to remove the profiles from
                 */
                id: string;
            };
        };
    };
};
type SubscriptionDeleteJobCreateQuery = {
    data: SubscriptionDeleteJobCreateQueryResourceObject;
};
type DataPrivacyProfileQueryResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
    };
};
type DataPrivacyDeletionJobEnum = 'data-privacy-deletion-job';
type DataPrivacyCreateDeletionJobQueryResourceObject = {
    type: DataPrivacyDeletionJobEnum;
    attributes: {
        profile: {
            data: DataPrivacyProfileQueryResourceObject;
        };
    };
};
type DataPrivacyCreateDeletionJobQuery = {
    data: DataPrivacyCreateDeletionJobQueryResourceObject;
};
type PushProfileUpsertQueryResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Also known as the `exchange_id`, this is an encrypted identifier used for identifying a
         * profile by Klaviyo's web tracking.
         *
         * You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.
         */
        _kx?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
        meta?: ProfileMeta;
        /**
         * Individual's email address
         */
        email?: string | null;
    };
};
type PushTokenCreateQueryResourceObject = {
    type: PushTokenEnum;
    attributes: {
        /**
         * A push token from APNS or FCM.
         */
        token: string;
        /**
         * The platform on which the push token was created.
         */
        platform: 'android' | 'ios';
        /**
         * This is the enablement status for the individual push token.
         */
        enablement_status?: 'AUTHORIZED' | 'DENIED' | 'NOT_DETERMINED' | 'PROVISIONAL' | 'UNAUTHORIZED';
        /**
         * The vendor of the push token.
         */
        vendor: 'apns' | 'fcm';
        /**
         * The background state of the push token.
         */
        background?: 'AVAILABLE' | 'DENIED' | 'RESTRICTED';
        device_metadata?: DeviceMetadata;
        /**
         * The profile associated with the push token to create/update
         */
        profile: {
            data: PushProfileUpsertQueryResourceObject;
        };
    };
};
type PushTokenCreateQuery = {
    data: PushTokenCreateQueryResourceObject;
};
type ImageCreateQueryResourceObject = {
    type: ImageEnum;
    attributes: {
        /**
         * A name for the image.  Defaults to the filename if not provided.  If the name matches an existing image, a suffix will be added.
         */
        name?: string | null;
        /**
         * An existing image url to import the image from. Alternatively, you may specify a base-64 encoded data-uri (`data:image/...`). Supported image formats: jpeg,png,gif. Maximum image size: 5MB.
         */
        import_from_url: string;
        /**
         * If true, this image is not shown in the asset library.
         */
        hidden?: boolean | null;
    };
};
type ImageCreateQuery = {
    data: ImageCreateQueryResourceObject;
};
type PostImageResponse = {
    data: {
        type: ImageEnum;
        /**
         * The ID of the image
         */
        id: string;
        attributes: {
            name: string;
            image_url: string;
            format: string;
            size: number;
            hidden: boolean;
            updated_at: string;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ImageUploadQuery = {
    /**
     * The image file to upload. Supported image formats: jpeg,png,gif. Maximum image size: 5MB.
     */
    file: Blob | File;
    /**
     * A name for the image.  Defaults to the filename if not provided.  If the name matches an existing image, a suffix will be added.
     */
    name?: string;
    /**
     * If true, this image is not shown in the asset library.
     */
    hidden?: boolean;
};
type Timeframe = {
    /**
     * Pre-defined key that represents a set timeframe
     */
    key: 'last_12_months' | 'last_30_days' | 'last_365_days' | 'last_3_months' | 'last_7_days' | 'last_90_days' | 'last_month' | 'last_week' | 'last_year' | 'this_month' | 'this_week' | 'this_year' | 'today' | 'yesterday';
};
type CustomTimeframe = {
    /**
     * A datetime that represents the start of a custom time frame. Offset is ignored and the company timezone is used.
     */
    start: string;
    /**
     * A datetime that represents the end of a custom time frame. Offset is ignored and the company timezone is used.
     */
    end: string;
};
type CampaignValuesReportEnum = 'campaign-values-report';
type CampaignValuesRequestDtoResourceObject = {
    type: CampaignValuesReportEnum;
    attributes: {
        /**
         * List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]
         */
        statistics: Array<'average_order_value' | 'bounce_rate' | 'bounced' | 'bounced_or_failed' | 'bounced_or_failed_rate' | 'click_rate' | 'click_to_open_rate' | 'clicks' | 'clicks_unique' | 'conversion_rate' | 'conversion_uniques' | 'conversion_value' | 'conversions' | 'delivered' | 'delivery_rate' | 'failed' | 'failed_rate' | 'message_segment_count_sum' | 'open_rate' | 'opens' | 'opens_unique' | 'recipients' | 'revenue_per_recipient' | 'spam_complaint_rate' | 'spam_complaints' | 'text_message_credit_usage_amount' | 'text_message_roi' | 'text_message_spend' | 'unsubscribe_rate' | 'unsubscribe_uniques' | 'unsubscribes'>;
        /**
         * The time frame to pull data from (Max length: 1 year). See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * ID of the metric to be used for conversion statistics
         */
        conversion_metric_id: string;
        /**
         * List of attributes to group the data by.
         * Allowed group-bys are campaign_id, campaign_message_id, campaign_message_name, group, group_name, send_channel, tag_id, tag_name, text_message_format, variation, variation_name.
         * If not passed in, the data will be grouped by campaign_id, campaign_message_id, send_channel.
         * The following group by attributes are required: campaign_id, campaign_message_id
         */
        group_by?: Array<'campaign_id' | 'campaign_message_id' | 'campaign_message_name' | 'group' | 'group_name' | 'send_channel' | 'tag_id' | 'tag_name' | 'text_message_format' | 'variation' | 'variation_name'> | null;
        /**
         * API filter string used to filter the query.
         * Scalar attributes (send_channel, campaign_id, campaign_message_id, campaign_message_name, variation, variation_name, text_message_format): Supported operators: equals, contains-any.
         * List attributes (tag_id, tag_name): Supported operators: contains-any, contains-all.
         * Only one filter can be used per attribute.
         * Only AND can be used as a combination operator.
         * Max of 100 items per list filter.
         * When filtering on send_channel, allowed values are email, sms, push-notification, whatsapp.
         */
        filter?: string | null;
    };
};
type CampaignValuesRequestDto = {
    data: CampaignValuesRequestDtoResourceObject;
};
type ValuesData = {
    /**
     * Applied groupings and the values for this object
     */
    groupings: {
        [key: string]: unknown;
    };
    /**
     * Requested statistics and their values results
     */
    statistics: {
        [key: string]: unknown;
    };
};
type PostCampaignValuesResponseDto = {
    data: {
        type: CampaignValuesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             */
            results: Array<ValuesData>;
        };
        relationships?: {
            campaigns?: {
                data?: Array<{
                    type: CampaignEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type FlowValuesReportEnum = 'flow-values-report';
type FlowValuesRequestDtoResourceObject = {
    type: FlowValuesReportEnum;
    attributes: {
        /**
         * List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]
         */
        statistics: Array<'average_order_value' | 'bounce_rate' | 'bounced' | 'bounced_or_failed' | 'bounced_or_failed_rate' | 'click_rate' | 'click_to_open_rate' | 'clicks' | 'clicks_unique' | 'conversion_rate' | 'conversion_uniques' | 'conversion_value' | 'conversions' | 'delivered' | 'delivery_rate' | 'failed' | 'failed_rate' | 'message_segment_count_sum' | 'open_rate' | 'opens' | 'opens_unique' | 'recipients' | 'revenue_per_recipient' | 'spam_complaint_rate' | 'spam_complaints' | 'text_message_credit_usage_amount' | 'text_message_roi' | 'text_message_spend' | 'unsubscribe_rate' | 'unsubscribe_uniques' | 'unsubscribes'>;
        /**
         * The time frame to pull data from (Max length: 1 year). See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * ID of the metric to be used for conversion statistics
         */
        conversion_metric_id: string;
        /**
         * List of attributes to group the data by.
         * Allowed group-bys are flow_id, flow_message_id, flow_message_name, flow_name, send_channel, tag_id, tag_name, text_message_format, variation, variation_name.
         * If not passed in, the data will be grouped by flow_id, flow_message_id, send_channel.
         * The following group by attributes are required: flow_message_id, flow_id.
         */
        group_by?: Array<'flow_id' | 'flow_message_id' | 'flow_message_name' | 'flow_name' | 'send_channel' | 'tag_id' | 'tag_name' | 'text_message_format' | 'variation' | 'variation_name'> | null;
        /**
         * API filter string used to filter the query.
         * Scalar attributes (flow_id, flow_name, send_channel, flow_message_id, flow_message_name, text_message_format, variation, variation_name): Supported operators: equals, contains-any.
         * List attributes (tag_id, tag_name): Supported operators: contains-any, contains-all.
         * Only one filter can be used per attribute.
         * Only AND can be used as a combination operator.
         * Max of 100 items per list filter.
         * When filtering on send_channel, allowed values are email, sms, push-notification, whatsapp.
         */
        filter?: string | null;
    };
};
type FlowValuesRequestDto = {
    data: FlowValuesRequestDtoResourceObject;
};
type PostFlowValuesResponseDto = {
    data: {
        type: FlowValuesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             */
            results: Array<ValuesData>;
        };
        relationships?: {
            flows?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-messages'?: {
                data?: Array<{
                    type: FlowMessageEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type FlowSeriesReportEnum = 'flow-series-report';
type FlowSeriesRequestDtoResourceObject = {
    type: FlowSeriesReportEnum;
    attributes: {
        /**
         * List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]
         */
        statistics: Array<'average_order_value' | 'bounce_rate' | 'bounced' | 'bounced_or_failed' | 'bounced_or_failed_rate' | 'click_rate' | 'click_to_open_rate' | 'clicks' | 'clicks_unique' | 'conversion_rate' | 'conversion_uniques' | 'conversion_value' | 'conversions' | 'delivered' | 'delivery_rate' | 'failed' | 'failed_rate' | 'message_segment_count_sum' | 'open_rate' | 'opens' | 'opens_unique' | 'recipients' | 'revenue_per_recipient' | 'spam_complaint_rate' | 'spam_complaints' | 'text_message_credit_usage_amount' | 'text_message_roi' | 'text_message_spend' | 'unsubscribe_rate' | 'unsubscribe_uniques' | 'unsubscribes'>;
        /**
         * The time frame to pull data from (Max length: 1 year). See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * The interval used to aggregate data within the series request.
         * If hourly is used, the timeframe cannot be longer than 7 days.
         * If daily is used, the timeframe cannot be longer than 60 days.
         * If monthly is used, the timeframe cannot be longer than 52 weeks.
         */
        interval: 'daily' | 'hourly' | 'monthly' | 'weekly';
        /**
         * ID of the metric to be used for conversion statistics
         */
        conversion_metric_id: string;
        /**
         * List of attributes to group the data by.
         * Allowed group-bys are flow_id, flow_message_id, flow_message_name, flow_name, send_channel, tag_id, tag_name, text_message_format, variation, variation_name.
         * If not passed in, the data will be grouped by flow_id, flow_message_id, send_channel.
         * The following group by attributes are required: flow_message_id, flow_id.
         */
        group_by?: Array<'flow_id' | 'flow_message_id' | 'flow_message_name' | 'flow_name' | 'send_channel' | 'tag_id' | 'tag_name' | 'text_message_format' | 'variation' | 'variation_name'> | null;
        /**
         * API filter string used to filter the query.
         * Scalar attributes (flow_id, flow_name, send_channel, flow_message_id, flow_message_name, text_message_format, variation, variation_name): Supported operators: equals, contains-any.
         * List attributes (tag_id, tag_name): Supported operators: contains-any, contains-all.
         * Only one filter can be used per attribute.
         * Only AND can be used as a combination operator.
         * Max of 100 items per list filter.
         * When filtering on send_channel, allowed values are email, sms, push-notification, whatsapp.
         */
        filter?: string | null;
    };
};
type FlowSeriesRequestDto = {
    data: FlowSeriesRequestDtoResourceObject;
};
type SeriesData = {
    /**
     * Applied groupings and the values for this object
     */
    groupings: {
        [key: string]: unknown;
    };
    /**
     * Requested statistics and their series result
     */
    statistics: {
        [key: string]: unknown;
    };
};
type PostFlowSeriesResponseDto = {
    data: {
        type: FlowSeriesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             * Each value in the results array corresponds to the date time at the same index.
             */
            results: Array<SeriesData>;
            /**
             * An array of date times which correspond to the equivalent index in the results data.
             */
            date_times: Array<string>;
        };
        relationships?: {
            flows?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-messages'?: {
                data?: Array<{
                    type: FlowMessageEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
    };
    links?: ObjectLinks;
};
type FormValuesReportEnum = 'form-values-report';
type FormValuesRequestDtoResourceObject = {
    type: FormValuesReportEnum;
    attributes: {
        /**
         * List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]
         */
        statistics: Array<'closed_form' | 'closed_form_uniques' | 'qualified_form' | 'qualified_form_uniques' | 'submit_rate' | 'submits' | 'submitted_form_step' | 'submitted_form_step_uniques' | 'viewed_form' | 'viewed_form_step' | 'viewed_form_step_uniques' | 'viewed_form_uniques'>;
        /**
         * The time frame to pull data from (Max length: 1 year). See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * List of attributes to group the data by.
         * Allowed group-bys are form_id, form_version_id.
         * If not passed in, the data will be grouped by form_id.
         * If a group by has prerequisites, they must be passed in together. The prerequisites for form_version_id is form_id
         */
        group_by?: Array<'form_id' | 'form_version_id'> | null;
        /**
         * API filter string used to filter the query.
         * Allowed filters are form_id, form_version_id.
         * Allowed operators are equals, any.
         * Only one filter can be used per attribute, only AND can be used as a combination operator.
         * Max of 100 messages per ANY filter.
         */
        filter?: string | null;
    };
};
type FormValuesRequestDto = {
    data: FormValuesRequestDtoResourceObject;
};
type PostFormValuesResponseDto = {
    data: {
        type: FormValuesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             */
            results: Array<ValuesData>;
        };
    };
    links?: ObjectLinks;
};
type FormSeriesReportEnum = 'form-series-report';
type FormSeriesRequestDtoResourceObject = {
    type: FormSeriesReportEnum;
    attributes: {
        /**
         * List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]
         */
        statistics: Array<'closed_form' | 'closed_form_uniques' | 'qualified_form' | 'qualified_form_uniques' | 'submit_rate' | 'submits' | 'submitted_form_step' | 'submitted_form_step_uniques' | 'viewed_form' | 'viewed_form_step' | 'viewed_form_step_uniques' | 'viewed_form_uniques'>;
        /**
         * The time frame to pull data from (Max length: 1 year). See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * The interval used to aggregate data within the series request.
         * If hourly is used, the timeframe cannot be longer than 7 days.
         * If daily is used, the timeframe cannot be longer than 60 days.
         * If monthly is used, the timeframe cannot be longer than 52 weeks.
         */
        interval: 'daily' | 'hourly' | 'monthly' | 'weekly';
        /**
         * List of attributes to group the data by.
         * Allowed group-bys are form_id, form_version_id.
         * If not passed in, the data will be grouped by form_id.
         * If a group by has prerequisites, they must be passed in together. The prerequisites for form_version_id is form_id
         */
        group_by?: Array<'form_id' | 'form_version_id'> | null;
        /**
         * API filter string used to filter the query.
         * Allowed filters are form_id, form_version_id.
         * Allowed operators are equals, any.
         * Only one filter can be used per attribute, only AND can be used as a combination operator.
         * Max of 100 messages per ANY filter.
         */
        filter?: string | null;
    };
};
type FormSeriesRequestDto = {
    data: FormSeriesRequestDtoResourceObject;
};
type PostFormSeriesResponseDto = {
    data: {
        type: FormSeriesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             * Each value in the results array corresponds to the date time at the same index.
             */
            results: Array<SeriesData>;
            /**
             * An array of date times which correspond to the equivalent index in the results data.
             */
            date_times: Array<string>;
        };
    };
    links?: ObjectLinks;
};
type SegmentValuesReportEnum = 'segment-values-report';
type SegmentValuesRequestDtoResourceObject = {
    type: SegmentValuesReportEnum;
    attributes: {
        /**
         * List of statistics to query for.
         */
        statistics: Array<'members_added' | 'members_removed' | 'net_members_changed' | 'total_members'>;
        /**
         * The time frame to pull data from (Max length: 1 year). Data is unavailable before June 1st, 2023. Please use a time frame after this date. See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * API filter string used to filter the query.
         * Allowed filters are segment_id.
         * Allowed operators are equals, any.
         * Only one filter can be used per attribute.
         * Max of 100 messages per ANY filter.
         */
        filter?: string | null;
    };
};
type SegmentValuesRequestDto = {
    data: SegmentValuesRequestDtoResourceObject;
};
type PostSegmentValuesResponseDto = {
    data: {
        type: SegmentValuesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             */
            results: Array<ValuesData>;
        };
    };
    links?: ObjectLinks;
};
type SegmentSeriesReportEnum = 'segment-series-report';
type SegmentSeriesRequestDtoResourceObject = {
    type: SegmentSeriesReportEnum;
    attributes: {
        /**
         * List of statistics to query for.
         */
        statistics: Array<'members_added' | 'members_removed' | 'net_members_changed' | 'total_members'>;
        /**
         * The time frame to pull data from (Max length: 1 year). Data is unavailable before June 1st, 2023. Please use a time frame after this date. See [available time frames](https://developers.klaviyo.com/en/reference/reporting_api_overview#available-time-frames).
         */
        timeframe: Timeframe | CustomTimeframe;
        /**
         * The interval used to aggregate data within the series request.
         * If hourly is used, the timeframe cannot be longer than 7 days.
         * If daily is used, the timeframe cannot be longer than 60 days.
         * If monthly is used, the timeframe cannot be longer than 52 weeks.
         */
        interval: 'daily' | 'hourly' | 'monthly' | 'weekly';
        /**
         * API filter string used to filter the query.
         * Allowed filters are segment_id.
         * Allowed operators are equals, any.
         * Only one filter can be used per attribute.
         * Max of 100 messages per ANY filter.
         */
        filter?: string | null;
    };
};
type SegmentSeriesRequestDto = {
    data: SegmentSeriesRequestDtoResourceObject;
};
type PostSegmentSeriesResponseDto = {
    data: {
        type: SegmentSeriesReportEnum;
        attributes: {
            /**
             * An array of all the returned values data.
             * Each object in the array represents one unique grouping and the results for that grouping.
             * Each value in the results array corresponds to the date time at the same index.
             */
            results: Array<SeriesData>;
            /**
             * An array of date times which correspond to the equivalent index in the results data.
             */
            date_times: Array<string>;
        };
    };
    links?: ObjectLinks;
};
type UniversalContentCreateQueryResourceObject = {
    type: TemplateUniversalContentEnum;
    attributes: {
        /**
         * The name for this universal content
         */
        name: string;
        definition: ButtonBlock | DropShadowBlock | HorizontalRuleBlock | HtmlBlock | ImageBlock | SpacerBlock | TextBlock;
    };
};
type UniversalContentCreateQuery = {
    data: UniversalContentCreateQueryResourceObject;
};
type PostUniversalContentResponse = {
    data: {
        type: TemplateUniversalContentEnum;
        /**
         * The ID of the universal content
         */
        id: string;
        attributes: {
            /**
             * The name for this universal content
             */
            name: string;
            definition?: ButtonBlock | CouponBlock | DropShadowBlock | HeaderBlock | HorizontalRuleBlock | HtmlBlock | ImageBlock | ProductBlock | ReviewBlock | SocialBlock | SpacerBlock | SplitBlock | TableBlock | TextBlock | UnsupportedBlock | VideoBlock | Section | null;
            /**
             * The datetime when this universal content was created
             */
            created: string;
            /**
             * The datetime when this universal content was updated
             */
            updated: string;
            /**
             * The status of a universal content screenshot.
             */
            screenshot_status: 'completed' | 'failed' | 'generating' | 'never_generated' | 'not_renderable' | 'stale';
            screenshot_url: string;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type FormCreateQueryResourceObject = {
    type: FormEnum;
    attributes: {
        definition: FormDefinition;
        /**
         * The status of the form.
         */
        status: 'draft' | 'live';
        /**
         * Whether the form has an A/B test configured.
         */
        ab_test: boolean;
        /**
         * The name of the form.
         */
        name: string;
    };
};
type FormCreateQuery = {
    data: FormCreateQueryResourceObject;
};
type PostEncodedFormResponse = {
    data: {
        type: FormEnum;
        /**
         * The ID of the form
         */
        id: string;
        attributes: {
            /**
             * The status of the form.
             */
            status: 'draft' | 'live';
            /**
             * Whether the form has an A/B test configured.
             */
            ab_test: boolean;
            /**
             * The name of the form.
             */
            name: string;
            definition: FormDefinition;
            /**
             * The ISO8601 timestamp when the form was created.
             */
            created_at: string;
            /**
             * The ISO8601 timestamp when the form was last updated.
             */
            updated_at: string;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type DataSourceRecordEnum = 'data-source-record';
type DataSourceRecordResourceObject = {
    type: DataSourceRecordEnum;
    attributes: {
        record: {
            [key: string]: unknown;
        };
    };
};
type DataSourceRecordBulkCreateJobEnum = 'data-source-record-bulk-create-job';
type DataSourceRecordBulkCreateJobCreateQueryResourceObject = {
    type: DataSourceRecordBulkCreateJobEnum;
    attributes: {
        /**
         * The records to ingest.
         */
        'data-source-records'?: {
            data: Array<DataSourceRecordResourceObject>;
        } | null;
    };
    relationships?: {
        'data-source'?: {
            data?: {
                type: DataSourceEnum;
                /**
                 * The data source to which the records belong.
                 */
                id: string;
            };
        };
    };
};
type DataSourceRecordBulkCreateJobCreateQuery = {
    data: DataSourceRecordBulkCreateJobCreateQueryResourceObject;
};
type DataSourceRecordCreateJobEnum = 'data-source-record-create-job';
type DataSourceRecordCreateJobCreateQueryResourceObject = {
    type: DataSourceRecordCreateJobEnum;
    attributes: {
        /**
         * The records to ingest.
         */
        'data-source-record': {
            data: DataSourceRecordResourceObject;
        };
    };
    relationships?: {
        'data-source'?: {
            data?: {
                type: DataSourceEnum;
                /**
                 * The data source to which the records belong.
                 */
                id: string;
            };
        };
    };
};
type DataSourceRecordCreateJobCreateQuery = {
    data: DataSourceRecordCreateJobCreateQueryResourceObject;
};
type DataSourceCreateQueryResourceObject = {
    type: DataSourceEnum;
    attributes: {
        /**
         * The title of the data source. Must be between 1 and 255 characters and unique within the namespace.
         */
        title: string;
        /**
         * Visibility of data source.
         */
        visibility?: 'private' | 'shared';
        description?: string | null;
        /**
         * The namespace of the data source.
         */
        namespace?: string | null;
    };
};
type DataSourceCreateQuery = {
    data: DataSourceCreateQueryResourceObject;
};
type PostDataSourceResponse = {
    data: {
        type: DataSourceEnum;
        /**
         * The ID of the data source
         */
        id: string;
        attributes: {
            /**
             * The title of the data source
             */
            title: string;
            /**
             * The status of the data source
             */
            visibility: 'private' | 'shared';
            /**
             * The description of the data source
             */
            description: string;
            /**
             * The namespace of the data source
             */
            namespace: string;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type WebFeedCreateQueryResourceObject = {
    type: WebFeedEnum;
    attributes: {
        /**
         * The name for this web feed
         */
        name: string;
        /**
         * The URL of the web feed
         */
        url: string;
        /**
         * The HTTP method for requesting the web feed
         */
        request_method: 'get' | 'post';
        /**
         * The content-type of the web feed
         */
        content_type: 'json' | 'xml';
    };
};
type WebFeedCreateQuery = {
    data: WebFeedCreateQueryResourceObject;
};
type PostWebFeedResponse = {
    data: {
        type: WebFeedEnum;
        /**
         * Primary key that uniquely identifies this web feed. Generated by Klaviyo
         */
        id: string;
        attributes: {
            /**
             * The name of this web feed
             */
            name: string;
            /**
             * The URL of the web feed
             */
            url: string;
            /**
             * The HTTP method for requesting the web feed
             */
            request_method: 'get' | 'post';
            /**
             * The content-type of the web feed
             */
            content_type: 'json' | 'xml';
            /**
             * Date and time when the web feed was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created: string;
            /**
             * Date and time when the web feed was updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated: string;
            /**
             * The cache status of this web feed if it exists
             */
            status?: 'critical_nightly_refresh_timeout' | 'disabled' | 'ok' | 'warning_nightly_refresh_timeout' | 'warning_periodic_refresh_timeout';
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CustomMetricCreateQueryResourceObject = {
    type: CustomMetricEnum;
    attributes: {
        /**
         * The name for this custom metric. Names must be unique across the account.         Attempting to create a metric with a duplicate name will return a 400 status code.
         */
        name: string;
        definition: CustomMetricDefinition;
    };
};
type CustomMetricCreateQuery = {
    data: CustomMetricCreateQueryResourceObject;
};
type PostCustomMetricResponse = {
    data: {
        type: CustomMetricEnum;
        /**
         * The ID of the custom metric
         */
        id: string;
        attributes: {
            /**
             * The name for this custom metric. Names must be unique across the account.         Attempting to create a metric with a duplicate name will return a 400 status code.
             */
            name: string;
            /**
             * The datetime when this custom metric was created.
             */
            created: string;
            /**
             * The datetime when this custom metric was updated.
             */
            updated: string;
            definition: CustomMetricDefinition;
        };
        relationships?: {
            metrics?: {
                data?: Array<{
                    type: MetricEnum;
                    /**
                     * Related metrics
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfileUpsertQueryWithSubscriptionsResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id?: string | null;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Also known as the `exchange_id`, this is an encrypted identifier used for identifying a
         * profile by Klaviyo's web tracking.
         *
         * You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.
         */
        _kx?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
        meta?: ProfileMeta;
        subscriptions?: SubscriptionChannels;
    };
};
type SubscriptionEnum = 'subscription';
type OnsiteSubscriptionCreateQueryResourceObject = {
    type: SubscriptionEnum;
    attributes: {
        /**
         * A custom method detail or source to store on the consent records for this subscription.
         */
        custom_source?: string | null;
        profile: {
            data: ProfileUpsertQueryWithSubscriptionsResourceObject;
        };
    };
    relationships: {
        list: {
            data?: {
                type: ListEnum;
                /**
                 * The list ID to add the newly subscribed profile to.
                 */
                id: string;
            };
        };
    };
};
type OnsiteSubscriptionCreateQuery = {
    data: OnsiteSubscriptionCreateQueryResourceObject;
};
type PushTokenUnregisterEnum = 'push-token-unregister';
type PushTokenUnregisterQueryResourceObject = {
    type: PushTokenUnregisterEnum;
    attributes: {
        /**
         * A push token from APNS or FCM.
         */
        token: string;
        /**
         * The platform on which the push token was created.
         */
        platform: 'android' | 'ios';
        /**
         * The vendor of the push token.
         */
        vendor?: 'apns' | 'fcm';
        /**
         * The profile associated with the push token to create/update
         */
        profile: {
            data: ProfileUpsertQueryResourceObject;
        };
    };
};
type PushTokenUnregisterQuery = {
    data: PushTokenUnregisterQueryResourceObject;
};
type OnsiteProfileCreateQuery = {
    data: OnsiteProfileCreateQueryResourceObject;
};
type EventsBulkCreateQuery = {
    data: EventsBulkCreateQueryResourceObject;
};
type ClientBisSubscriptionCreateQueryResourceObject = {
    type: BackInStockSubscriptionEnum;
    attributes: {
        /**
         * The channel(s) through which the profile would like to receive the back in stock notification. This can be leveraged within a back in stock flow to notify the subscriber through their preferred channel(s).
         */
        channels: Array<'EMAIL' | 'PUSH' | 'SMS' | 'WHATSAPP'>;
        profile: {
            data: ProfileIdentifierDtoResourceObject;
        };
    };
    relationships: {
        variant: {
            data?: {
                type: CatalogVariantEnum;
                /**
                 * The catalog variant ID for which the profile is subscribing to back in stock notifications. This ID is made up of the integration type, catalog ID, and and the external ID of the variant like so: `integrationType:::catalogId:::externalId`. If the integration you are using is not set up for multi-catalog storage, the 'catalogId' will be `$default`. For Shopify `$shopify:::$default:::33001893429341`
                 */
                id: string;
            };
        };
    };
};
type ClientBisSubscriptionCreateQuery = {
    data: ClientBisSubscriptionCreateQueryResourceObject;
};
type ReviewProductExternalId = {
    /**
     * The external ID of the product
     */
    external_id: string;
    /**
     * The integration key of the product in lowercase
     */
    integration_key: 'shopify' | 'woocommerce';
};
type CustomQuestionDto = {
    /**
     * The ID of the custom question
     */
    id: string;
    /**
     * The answers to the custom question
     */
    answers: Array<string>;
};
type OrderEnum = 'order';
type ReviewCreateDtoResourceObject = {
    type: ReviewEnum;
    attributes: {
        /**
         * The type of this review -- either a review or a question
         */
        review_type: 'question' | 'rating' | 'review' | 'store';
        /**
         * The email of the author of this review
         */
        email: string;
        /**
         * The author of this review
         */
        author: string;
        /**
         * The content of this review
         */
        content: string;
        /**
         * The incentive type for the review
         */
        incentive_type?: 'coupon_or_discount' | 'employee_review' | 'free_product' | 'loyalty_points' | 'other' | 'paid_promotion' | 'sweepstakes_entry';
        product?: ReviewProductExternalId;
        /**
         * The rating of this review on a scale from 1-5. If the review type is "question", this field will be null.
         */
        rating?: 1 | 2 | 3 | 4 | 5;
        /**
         * The title of this review
         */
        title?: string | null;
        /**
         * Custom question and answers for the review
         */
        custom_questions?: Array<CustomQuestionDto> | null;
        /**
         * The list of images submitted with this review (represented as a list of urls or base-64 encoded data-uri). If there are no images, this field will be an empty list.
         */
        images?: Array<string> | null;
    };
    relationships?: {
        order?: {
            data?: {
                type: OrderEnum;
                /**
                 * The Order ID related to the review
                 */
                id: string;
            };
        };
    };
};
type ReviewCreateDto = {
    data: ReviewCreateDtoResourceObject;
};
type CouponUpdateQueryResourceObject = {
    type: CouponEnum;
    /**
     * The internal id of a Coupon is equivalent to its external id stored within an integration.
     */
    id: string;
    attributes: {
        /**
         * A description of the coupon.
         */
        description?: string | null;
        /**
         * The monitor configuration for the coupon.
         */
        monitor_configuration?: {
            [key: string]: unknown;
        } | null;
    };
};
type CouponUpdateQuery = {
    data: CouponUpdateQueryResourceObject;
};
type PatchCouponResponse = {
    data: {
        type: CouponEnum;
        /**
         * The internal id of a Coupon is equivalent to its external id stored within an integration.
         */
        id: string;
        attributes: {
            /**
             * This is the id that is stored in an integration such as Shopify or Magento.
             */
            external_id: string;
            /**
             * A description of the coupon.
             */
            description?: string | null;
            /**
             * The monitor configuration for the coupon.
             */
            monitor_configuration?: {
                [key: string]: unknown;
            } | null;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CouponCodeUpdateQueryResourceObject = {
    type: CouponCodeEnum;
    /**
     * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
     */
    id: string;
    attributes: {
        /**
         * The API status of our coupon codes.
         */
        status?: 'ASSIGNED_TO_PROFILE' | 'DELETING' | 'PROCESSING' | 'UNASSIGNED' | 'USED' | 'VERSION_NOT_ACTIVE';
        /**
         * The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.
         */
        expires_at?: string | null;
    };
};
type CouponCodeUpdateQuery = {
    data: CouponCodeUpdateQueryResourceObject;
};
type PatchCouponCodeResponse = {
    data: {
        type: CouponCodeEnum;
        /**
         * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
         */
        id: string;
        attributes: {
            /**
             * This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon.
             */
            unique_code?: string | null;
            /**
             * The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.
             */
            expires_at?: string | null;
            /**
             * The current status of the coupon code.
             */
            status?: 'ASSIGNED_TO_PROFILE' | 'DELETING' | 'PROCESSING' | 'UNASSIGNED' | 'USED' | 'VERSION_NOT_ACTIVE';
        };
        relationships?: {
            coupon?: {
                data?: {
                    type: CouponEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            profile?: {
                data?: {
                    type: ProfileEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogItemUpdateQuery = {
    data: CatalogItemUpdateQueryResourceObject;
};
type PatchCatalogItemResponse = {
    data: {
        type: CatalogItemEnum;
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
        attributes: {
            /**
             * The ID of the catalog item in an external system.
             */
            external_id?: string | null;
            /**
             * The title of the catalog item.
             */
            title?: string | null;
            /**
             * A description of the catalog item.
             */
            description?: string | null;
            /**
             * This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).
             */
            price?: number | null;
            /**
             * URL pointing to the location of the catalog item on your website.
             */
            url?: string | null;
            /**
             * URL pointing to the location of a full image of the catalog item.
             */
            image_full_url?: string | null;
            /**
             * URL pointing to the location of an image thumbnail of the catalog item
             */
            image_thumbnail_url?: string | null;
            /**
             * List of URLs pointing to the locations of images of the catalog item.
             */
            images?: Array<string> | null;
            /**
             * Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.
             */
            custom_metadata?: {
                [key: string]: unknown;
            } | null;
            /**
             * Boolean value indicating whether the catalog item is published.
             */
            published?: boolean | null;
            /**
             * Date and time when the catalog item was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created?: string | null;
            /**
             * Date and time when the catalog item was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            updated?: string | null;
        };
        relationships?: {
            variants?: {
                data?: Array<{
                    type: CatalogVariantEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogVariantUpdateQuery = {
    data: CatalogVariantUpdateQueryResourceObject;
};
type PatchCatalogVariantResponse = {
    data: {
        type: CatalogVariantEnum;
        /**
         * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
        attributes: {
            /**
             * The ID of the catalog item variant in an external system.
             */
            external_id?: string | null;
            /**
             * The title of the catalog item variant.
             */
            title?: string | null;
            /**
             * A description of the catalog item variant.
             */
            description?: string | null;
            /**
             * The SKU of the catalog item variant.
             */
            sku?: string | null;
            /**
             * This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values:
             * `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock.
             * `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.
             */
            inventory_policy?: 0 | 1 | 2;
            /**
             * The quantity of the catalog item variant currently in stock.
             */
            inventory_quantity?: number | null;
            /**
             * This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).
             */
            price?: number | null;
            /**
             * URL pointing to the location of the catalog item variant on your website.
             */
            url?: string | null;
            /**
             * URL pointing to the location of a full image of the catalog item variant.
             */
            image_full_url?: string | null;
            /**
             * URL pointing to the location of an image thumbnail of the catalog item variant.
             */
            image_thumbnail_url?: string | null;
            /**
             * List of URLs pointing to the locations of images of the catalog item variant.
             */
            images?: Array<string> | null;
            /**
             * Flat JSON blob to provide custom metadata about the catalog item variant. May not exceed 100kb.
             */
            custom_metadata?: {
                [key: string]: unknown;
            } | null;
            /**
             * Boolean value indicating whether the catalog item variant is published.
             */
            published?: boolean | null;
            /**
             * Date and time when the catalog item  variant was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            created?: string | null;
            /**
             * Date and time when the catalog item variant was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            updated?: string | null;
        };
        relationships?: {
            item?: {
                data?: {
                    type: CatalogItemEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CatalogCategoryUpdateQuery = {
    data: CatalogCategoryUpdateQueryResourceObject;
};
type PatchCatalogCategoryResponse = {
    data: {
        type: CatalogCategoryEnum;
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
        attributes: {
            /**
             * The ID of the catalog category in an external system.
             */
            external_id?: string | null;
            /**
             * The name of the catalog category.
             */
            name?: string | null;
            /**
             * Date and time when the catalog category was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).
             */
            updated?: string | null;
        };
        relationships?: {
            items?: {
                data?: Array<{
                    type: CatalogItemEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ListPartialUpdateQueryResourceObject = {
    type: ListEnum;
    /**
     * Primary key that uniquely identifies this list. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * A helpful name to label the list
         */
        name?: string | null;
        /**
         * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'.
         */
        opt_in_process?: 'double_opt_in' | 'single_opt_in';
    };
};
type ListPartialUpdateQuery = {
    data: ListPartialUpdateQueryResourceObject;
};
type PatchListPartialUpdateResponse = {
    data: {
        type: ListEnum;
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
        attributes: {
            /**
             * A helpful name to label the list
             */
            name?: string | null;
            /**
             * Date and time when the list was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * Date and time when the list was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
            /**
             * The opt-in process for this list. Valid values: 'double_opt_in', 'single_opt_in'.
             */
            opt_in_process?: 'double_opt_in' | 'single_opt_in';
        };
        relationships?: {
            profiles?: {
                data?: Array<{
                    type: ProfileEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type SegmentPartialUpdateQueryResourceObject = {
    type: SegmentEnum;
    id: string;
    attributes: {
        definition?: SegmentDefinition;
        name?: string | null;
        is_starred?: boolean | null;
        /**
         * Set to false to deactivate the segment. When deactivating, this must be the only attribute in the request body. Deactivation cannot be combined with other updates. Marking a segment inactive will impact campaigns, flows, ad syncs, forms, helpdesk routing, and other features that reference this segment. Set to true to reactivate a deactivated segment.
         */
        is_active?: boolean | null;
    };
};
type SegmentPartialUpdateQuery = {
    data: SegmentPartialUpdateQueryResourceObject;
};
type PatchSegmentPartialUpdateResponse = {
    data: {
        type: SegmentEnum;
        id: string;
        attributes: {
            /**
             * A helpful name to label the segment
             */
            name?: string | null;
            definition?: SegmentDefinition;
            /**
             * Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
            /**
             * Whether the segment is active. Inactive segments are not processed and their membership does not update.
             */
            is_active: boolean;
            is_processing: boolean;
            is_starred: boolean;
        };
        relationships?: {
            profiles?: {
                data?: Array<{
                    type: ProfileEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'flow-triggers'?: {
                data?: Array<{
                    type: FlowEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ProfilePartialUpdateQueryResourceObject = {
    type: ProfileEnum;
    /**
     * Primary key that uniquely identifies this profile. Generated by Klaviyo.
     */
    id: string;
    attributes: {
        /**
         * Individual's email address
         */
        email?: string | null;
        /**
         * Individual's phone number in E.164 format
         */
        phone_number?: string | null;
        /**
         * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
         */
        external_id?: string | null;
        /**
         * Individual's first name
         */
        first_name?: string | null;
        /**
         * Individual's last name
         */
        last_name?: string | null;
        /**
         * Name of the company or organization within the company for whom the individual works
         */
        organization?: string | null;
        /**
         * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
         */
        locale?: string | null;
        /**
         * Individual's job title
         */
        title?: string | null;
        /**
         * URL pointing to the location of a profile image
         */
        image?: string | null;
        location?: ProfileLocation;
        /**
         * An object containing key/value pairs for any custom properties assigned to this profile
         */
        properties?: {
            [key: string]: unknown;
        } | null;
    };
    meta?: ProfileMeta;
};
type ProfilePartialUpdateQuery = {
    data: ProfilePartialUpdateQueryResourceObject;
};
type PatchProfileResponse = {
    data: {
        type: ProfileEnum;
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id?: string | null;
        attributes: {
            /**
             * Individual's email address
             */
            email?: string | null;
            /**
             * Individual's phone number in E.164 format
             */
            phone_number?: string | null;
            /**
             * A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.
             */
            external_id?: string | null;
            /**
             * Individual's first name
             */
            first_name?: string | null;
            /**
             * Individual's last name
             */
            last_name?: string | null;
            /**
             * Name of the company or organization within the company for whom the individual works
             */
            organization?: string | null;
            /**
             * The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2)
             */
            locale?: string | null;
            /**
             * Individual's job title
             */
            title?: string | null;
            /**
             * URL pointing to the location of a profile image
             */
            image?: string | null;
            /**
             * Date and time when the profile was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * Date and time when the profile was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
            /**
             * Date and time of the most recent event the triggered an update to the profile, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            last_event_date?: string | null;
            location?: ProfileLocation;
            /**
             * An object containing key/value pairs for any custom properties assigned to this profile
             */
            properties?: {
                [key: string]: unknown;
            } | null;
            subscriptions?: Subscriptions;
            predictive_analytics?: PredictiveAnalytics;
        };
        relationships?: {
            lists?: {
                data?: Array<{
                    type: ListEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            segments?: {
                data?: Array<{
                    type: SegmentEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            'push-tokens'?: {
                data?: Array<{
                    type: PushTokenEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type FlowUpdateQueryResourceObject = {
    type: FlowEnum;
    /**
     * ID of the Flow to update. Ex: XVTP5Q
     */
    id: string;
    attributes: {
        /**
         * Status you want to update the flow to. ['draft', 'manual', or 'live']
         */
        status: string;
    };
};
type FlowUpdateQuery = {
    data: FlowUpdateQueryResourceObject;
};
type PatchFlowResponse = {
    data: {
        type: FlowEnum;
        id: string;
        attributes: {
            name?: string | null;
            status?: string | null;
            archived?: boolean | null;
            created?: string | null;
            updated?: string | null;
            /**
             * Corresponds to the object which triggered the flow.
             */
            trigger_type?: 'Added to List' | 'Date Based' | 'Low Inventory' | 'Metric' | 'Price Drop' | 'Unconfigured';
        };
        relationships?: {
            'flow-actions'?: {
                data?: Array<{
                    type: FlowActionEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type FlowActionUpdateQueryResourceObject = {
    type: FlowActionEnum;
    id: string;
    attributes: {
        /**
         * The encoded flow action definition.
         */
        definition: ActionOutputSplitAction | BackInStockDelayAction | ConditionalBranchAction | ContentExperimentAction | SendEmailAction | SendPushNotificationAction | SendSmsAction | SendWebhookAction | SendInternalAlertAction | SendWhatsAppAction | TimeDelayAction | TriggerBranchAction | UpdateProfileAction | TargetDateAction | CountdownDelayAction | AbTestAction | InternalServiceAction | CodeAction | MultiBranchSplitAction | ListUpdateAction;
    };
};
type FlowActionUpdateQuery = {
    data: FlowActionUpdateQueryResourceObject;
};
type PatchFlowActionEncodedResponse = {
    data: {
        type: FlowActionEnum;
        id: string;
        attributes: {
            created?: string | null;
            updated?: string | null;
            /**
             * The encoded flow action definition.
             */
            definition?: ActionOutputSplitAction | BackInStockDelayAction | ConditionalBranchAction | ContentExperimentAction | SendEmailAction | SendPushNotificationAction | SendSmsAction | SendWebhookAction | SendInternalAlertAction | SendWhatsAppAction | TimeDelayAction | TriggerBranchAction | UpdateProfileAction | TargetDateAction | CountdownDelayAction | AbTestAction | InternalServiceAction | CodeAction | MultiBranchSplitAction | ListUpdateAction | null;
        };
        relationships?: {
            flow?: {
                data?: {
                    type: FlowEnum;
                    id: string;
                };
                links?: RelationshipLinks;
            };
            'flow-messages'?: {
                data?: Array<{
                    type: FlowMessageEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type AudiencesUpdate = {
    /**
     * An optional list of included audiences, will override existing included audiences
     */
    included?: Array<string> | null;
    /**
     * An optional list of excluded audiences, will override exising excluded audiences
     */
    excluded?: Array<string> | null;
};
type CampaignPartialUpdateQueryResourceObject = {
    type: CampaignEnum;
    /**
     * The campaign ID to be retrieved
     */
    id: string;
    attributes: {
        /**
         * The campaign name
         */
        name?: string | null;
        audiences?: AudiencesUpdate;
        /**
         * Options to use when sending a campaign
         */
        send_options?: EmailSendOptions | SmsSendOptions | PushSendOptions | null;
        /**
         * The tracking options associated with the campaign
         */
        tracking_options?: CampaignsEmailTrackingOptions | CampaignsSmsTrackingOptions | null;
        /**
         * The send strategy the campaign will send with
         */
        send_strategy?: StaticSendStrategy | ThrottledSendStrategy | ImmediateSendStrategy | SmartSendTimeStrategy | null;
    };
};
type CampaignPartialUpdateQuery = {
    data: CampaignPartialUpdateQueryResourceObject;
};
type PatchCampaignResponse = {
    data: {
        type: CampaignEnum;
        /**
         * The campaign ID
         */
        id: string;
        attributes: {
            /**
             * The campaign name
             */
            name: string;
            /**
             * The current status of the campaign
             */
            status: 'Adding Recipients' | 'Cancelled' | 'Cancelled: Account Disabled' | 'Cancelled: Internal Error' | 'Cancelled: No Recipients' | 'Cancelled: Smart Sending' | 'Draft' | 'Preparing to schedule' | 'Preparing to send' | 'Queued without Recipients' | 'Scheduled' | 'Sending' | 'Sending Segments' | 'Sent' | 'Unknown' | 'Variations Sent';
            /**
             * Whether the campaign has been archived or not
             */
            archived: boolean;
            audiences: Audiences;
            /**
             * Options to use when sending a campaign
             */
            send_options: EmailSendOptions | SmsSendOptions | PushSendOptions;
            /**
             * The tracking options associated with the campaign
             */
            tracking_options?: CampaignsEmailTrackingOptions | CampaignsSmsTrackingOptions | null;
            /**
             * The send strategy the campaign will send with
             */
            send_strategy: StaticSendStrategy | SmartSendTimeStrategy | ThrottledSendStrategy | ImmediateSendStrategy | AbTestSendStrategy | UnsupportedSendStrategy;
            /**
             * The datetime when the campaign was created
             */
            created_at: string;
            /**
             * The datetime when the campaign was scheduled for future sending
             */
            scheduled_at?: string | null;
            /**
             * The datetime when the campaign was last updated by a user or the system
             */
            updated_at: string;
            /**
             * The datetime when the campaign will be / was sent or None if not yet scheduled by a send_job.
             */
            send_time?: string | null;
        };
        relationships?: {
            'campaign-messages'?: {
                data?: Array<{
                    type: CampaignMessageEnum;
                    /**
                     * The message(s) associated with the campaign
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type MobilePushContentUpdate = {
    /**
     * The title of the message
     */
    title?: string | null;
    /**
     * The message body
     */
    body?: string | null;
    /**
     * The dynamic image to be used in the push notification
     */
    dynamic_image?: string | null;
};
type MobilePushMessageStandardDefinitionUpdate = {
    channel: MobilePushEnum;
    /**
     * The key-value pairs to be sent with the push notification
     */
    kv_pairs?: {
        [key: string]: unknown;
    } | null;
    content?: MobilePushContentUpdate;
    options?: MobilePushOptions;
    notification_type?: StandardEnum;
};
type MobilePushMessageSilentDefinitionUpdate = {
    channel: MobilePushEnum;
    /**
     * The key-value pairs to be sent with the push notification
     */
    kv_pairs?: {
        [key: string]: unknown;
    };
    notification_type?: SilentEnum;
};
type CampaignMessagePartialUpdateQueryResourceObject = {
    type: CampaignMessageEnum;
    /**
     * The message ID to be retrieved
     */
    id: string;
    attributes: {
        /**
         * The contents and settings of the campaign message
         */
        definition?: EmailMessageDefinition | SmsMessageDefinitionCreate | MobilePushMessageStandardDefinitionUpdate | MobilePushMessageSilentDefinitionUpdate | null;
    };
    relationships?: {
        image?: {
            data?: {
                type: ImageEnum;
                /**
                 * The associated image for mobile_push messages
                 */
                id: string;
            };
        };
    };
};
type CampaignMessagePartialUpdateQuery = {
    data: CampaignMessagePartialUpdateQueryResourceObject;
};
type PatchCampaignMessageResponse = {
    data: {
        type: CampaignMessageEnum;
        /**
         * The message ID
         */
        id: string;
        attributes: {
            definition?: EmailMessageDefinition | SmsMessageDefinition | MobilePushMessageStandardDefinition | MobilePushMessageSilentDefinition | null;
            /**
             * The list of appropriate Send Time Sub-objects associated with the message
             */
            send_times?: Array<SendTime> | null;
            /**
             * The datetime when the message was created
             */
            created_at?: string | null;
            /**
             * The datetime when the message was last updated
             */
            updated_at?: string | null;
        };
        relationships?: {
            campaign?: {
                data?: {
                    type: CampaignEnum;
                    /**
                     * The parent campaign id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            template?: {
                data?: {
                    type: TemplateEnum;
                    /**
                     * The associated template id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            image?: {
                data?: {
                    type: ImageEnum;
                    /**
                     * The associated image id
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CampaignMessageImageUpdateQuery = {
    data: {
        type: ImageEnum;
        /**
         * Campaign Message Image
         */
        id: string;
    };
};
type CampaignSendJobPartialUpdateQueryResourceObject = {
    type: CampaignSendJobEnum;
    /**
     * The ID of the currently sending campaign to cancel or revert
     */
    id: string;
    attributes: {
        /**
         * The action you would like to take with this send job from among 'cancel' and 'revert'
         */
        action: 'cancel' | 'revert';
    };
};
type CampaignSendJobPartialUpdateQuery = {
    data: CampaignSendJobPartialUpdateQueryResourceObject;
};
type TemplateUpdateQueryResourceObject = {
    type: TemplateEnum;
    /**
     * The ID of template
     */
    id: string;
    attributes: {
        /**
         * The name of the template
         */
        name?: string | null;
        /**
         * The HTML of the template
         */
        html?: string | null;
        /**
         * The plaintext of the template
         */
        text?: string | null;
        /**
         * The AMP version of the template. Requires AMP Email to be enabled to access in-app. Refer to the AMP Email setup guide at https://developers.klaviyo.com/en/docs/send_amp_emails_in_klaviyo
         */
        amp?: string | null;
    };
};
type TemplateUpdateQuery = {
    data: TemplateUpdateQueryResourceObject;
};
type PatchTemplateResponse = {
    data: {
        type: TemplateEnum;
        /**
         * The ID of template
         */
        id: string;
        attributes: {
            /**
             * The name of the template
             */
            name: string;
            /**
             * `editor_type` has a fixed set of values:
             * * SYSTEM_DRAGGABLE: indicates a drag-and-drop editor template
             * * SIMPLE: A rich text editor template
             * * CODE: A custom HTML template
             * * USER_DRAGGABLE: A hybrid template, using custom HTML in the drag-and-drop editor
             */
            editor_type: string;
            /**
             * The rendered HTML of the template
             */
            html: string;
            /**
             * The template plain_text
             */
            text?: string | null;
            /**
             * The AMP version of the template. Requires AMP Email to be enabled to access in-app. Refer to the AMP Email setup guide at https://developers.klaviyo.com/en/docs/send_amp_emails_in_klaviyo
             */
            amp?: string | null;
            /**
             * The date the template was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created?: string | null;
            /**
             * The date the template was updated in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated?: string | null;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TagUpdateQueryResourceObject = {
    type: TagEnum;
    /**
     * The Tag ID
     */
    id: string;
    attributes: {
        /**
         * The Tag name
         */
        name: string;
    };
};
type TagUpdateQuery = {
    data: TagUpdateQueryResourceObject;
};
type TagGroupUpdateQueryResourceObject = {
    type: TagGroupEnum;
    /**
     * The Tag Group ID
     */
    id: string;
    attributes: {
        /**
         * The Tag Group name
         */
        name: string;
        return_fields?: Array<string> | null;
    };
};
type TagGroupUpdateQuery = {
    data: TagGroupUpdateQueryResourceObject;
};
type PatchTagGroupResponse = {
    data: {
        type: TagGroupEnum;
        /**
         * The Tag Group ID
         */
        id: string;
        attributes: {
            /**
             * The Tag Group name
             */
            name: string;
            /**
             * If a tag group is non-exclusive, any given related resource (campaign, flow, etc.) can be linked to multiple tags from that tag group. If a tag group is exclusive, any given related resource can only be linked to one tag from that tag group.
             */
            exclusive: boolean;
            /**
             * Every company automatically has one Default Tag Group. The Default Tag Group cannot be deleted, and no other Default Tag Groups can be created. This value is true for the Default Tag Group and false for all other Tag Groups.
             */
            default: boolean;
        };
        relationships?: {
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type WebhookPartialUpdateQueryResourceObject = {
    type: WebhookEnum;
    /**
     * The ID of the webhook.
     */
    id: string;
    attributes: {
        /**
         * A name for the webhook.
         */
        name?: string | null;
        /**
         * A description for the webhook.
         */
        description?: string | null;
        /**
         * A url to send webhook calls to. Must be https.
         */
        endpoint_url?: string | null;
        /**
         * A secret key, that will be used for webhook request signing.
         */
        secret_key?: string | null;
        /**
         * Is the webhook enabled.
         */
        enabled?: boolean | null;
    };
    relationships?: {
        'webhook-topics'?: {
            data?: Array<{
                type: WebhookTopicEnum;
                /**
                 * A list of topics to subscribe to.
                 */
                id: string;
            }>;
        };
    };
};
type WebhookPartialUpdateQuery = {
    data: WebhookPartialUpdateQueryResourceObject;
};
type PatchWebhookResponse = {
    data: {
        type: WebhookEnum;
        /**
         * The ID of the webhook.
         */
        id: string;
        attributes: {
            /**
             * A name for the webhook.
             */
            name: string;
            /**
             * A description for the webhook.
             */
            description?: string | null;
            /**
             * The url to send webhook requests to, truncated for security.
             */
            endpoint_url: string;
            /**
             * Is the webhook enabled.
             */
            enabled: boolean;
            /**
             * Date and time when the webhook was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created_at?: string | null;
            /**
             * Date and time when the webhook was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated_at?: string | null;
        };
        relationships?: {
            'webhook-topics'?: {
                data?: Array<{
                    type: WebhookTopicEnum;
                    /**
                     * A topic the webhook is subscribed to.
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ImagePartialUpdateQueryResourceObject = {
    type: ImageEnum;
    /**
     * The ID of the image
     */
    id: string;
    attributes: {
        /**
         * A name for the image.
         */
        name?: string | null;
        /**
         * If true, this image is not shown in the asset library.
         */
        hidden?: boolean | null;
    };
};
type ImagePartialUpdateQuery = {
    data: ImagePartialUpdateQueryResourceObject;
};
type PatchImageResponse = {
    data: {
        type: ImageEnum;
        /**
         * The ID of the image
         */
        id: string;
        attributes: {
            name: string;
            image_url: string;
            format: string;
            size: number;
            hidden: boolean;
            updated_at: string;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type UniversalContentPartialUpdateQueryResourceObject = {
    type: TemplateUniversalContentEnum;
    /**
     * The ID of the template universal content
     */
    id: string;
    attributes: {
        /**
         * The name for this template universal content
         */
        name?: string | null;
        definition?: ButtonBlock | DropShadowBlock | HorizontalRuleBlock | HtmlBlock | ImageBlock | SpacerBlock | TextBlock | null;
    };
};
type UniversalContentPartialUpdateQuery = {
    data: UniversalContentPartialUpdateQueryResourceObject;
};
type PatchUniversalContentResponse = {
    data: {
        type: TemplateUniversalContentEnum;
        /**
         * The ID of the universal content
         */
        id: string;
        attributes: {
            /**
             * The name for this universal content
             */
            name: string;
            definition?: ButtonBlock | CouponBlock | DropShadowBlock | HeaderBlock | HorizontalRuleBlock | HtmlBlock | ImageBlock | ProductBlock | ReviewBlock | SocialBlock | SpacerBlock | SplitBlock | TableBlock | TextBlock | UnsupportedBlock | VideoBlock | Section | null;
            /**
             * The datetime when this universal content was created
             */
            created: string;
            /**
             * The datetime when this universal content was updated
             */
            updated: string;
            /**
             * The status of a universal content screenshot.
             */
            screenshot_status: 'completed' | 'failed' | 'generating' | 'never_generated' | 'not_renderable' | 'stale';
            screenshot_url: string;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ReviewPatchQueryResourceObject = {
    type: ReviewEnum;
    /**
     * The id of the review (review ID).
     */
    id: string;
    attributes: {
        /**
         * The updated status intended for the review with this ID
         */
        status?: ReviewStatusRejected | ReviewStatusFeatured | ReviewStatusPublished | ReviewStatusUnpublished | ReviewStatusPending | null;
    };
};
type ReviewPatchQuery = {
    data: ReviewPatchQueryResourceObject;
};
type PatchReviewResponseDto = {
    data: {
        type: ReviewEnum;
        /**
         * The ID of the review
         */
        id: string;
        attributes: {
            /**
             * The email of the author of this review
             */
            email?: string | null;
            /**
             * The status of this review
             */
            status?: ReviewStatusRejected | ReviewStatusFeatured | ReviewStatusPublished | ReviewStatusUnpublished | ReviewStatusPending | null;
            /**
             * The verification status of this review (aka whether or not we have confirmation that the customer bought the product)
             */
            verified: boolean;
            /**
             * The type of this review — either a review, question, or rating
             */
            review_type: 'question' | 'rating' | 'review' | 'store';
            /**
             * The datetime when this review was created
             */
            created: string;
            /**
             * The datetime when this review was updated
             */
            updated: string;
            /**
             * The list of images submitted with this review (represented as a list of urls). If there are no images, this field will be an empty list.
             */
            images: Array<string>;
            product?: ReviewProductDto;
            /**
             * The rating of this review on a scale from 1-5. If the review type is "question", this field will be null.
             */
            rating?: number | null;
            /**
             * The author of this review
             */
            author?: string | null;
            /**
             * The content of this review
             */
            content?: string | null;
            /**
             * The title of this review
             */
            title?: string | null;
            /**
             * A quote from this review that summarizes the content
             */
            smart_quote?: string | null;
            public_reply?: ReviewPublicReply;
        };
        relationships?: {
            events?: {
                data?: Array<{
                    type: EventEnum;
                    /**
                     * Related Events
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
            item?: {
                data?: {
                    type: CatalogItemEnum;
                    /**
                     * Related Catalog Item
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type TrackingSettingPartialUpdateQueryResourceObject = {
    type: TrackingSettingEnum;
    /**
     * The id of the tracking setting (account ID).
     */
    id: string;
    attributes: {
        /**
         * Whether tracking parameters are automatically added to campaigns and flows.
         */
        auto_add_parameters?: boolean | null;
        utm_source?: TrackingParamDto;
        utm_medium?: TrackingParamDto;
        utm_campaign?: TrackingParamDto;
        utm_id?: TrackingParamDto;
        utm_term?: TrackingParamDto;
        /**
         * List of custom tracking parameters.
         */
        custom_parameters?: Array<CustomTrackingParamDto> | null;
    };
};
type TrackingSettingPartialUpdateQuery = {
    data: TrackingSettingPartialUpdateQueryResourceObject;
};
type PatchTrackingSettingResponse = {
    data: {
        type: TrackingSettingEnum;
        /**
         * The id of the tracking setting (account ID).
         */
        id: string;
        attributes: {
            /**
             * Whether tracking parameters are automatically added to campaigns and flows.
             */
            auto_add_parameters: boolean;
            utm_source: TrackingParamDto;
            utm_medium: TrackingParamDto;
            utm_campaign?: TrackingParamDto;
            utm_id?: TrackingParamDto;
            utm_term?: TrackingParamDto;
            /**
             * Additional custom tracking parameters.
             */
            custom_parameters?: Array<CustomTrackingParamDto> | null;
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type WebFeedPartialUpdateQueryResourceObject = {
    type: WebFeedEnum;
    /**
     * The ID of the web feed
     */
    id: string;
    attributes: {
        /**
         * The name of this web feed
         */
        name?: string | null;
        /**
         * The URL of the web feed
         */
        url?: string | null;
        /**
         * The HTTP method for requesting the web feed
         */
        request_method?: 'get' | 'post';
        /**
         * The content-type of the web feed
         */
        content_type?: 'json' | 'xml';
    };
};
type WebFeedPartialUpdateQuery = {
    data: WebFeedPartialUpdateQueryResourceObject;
};
type PatchWebFeedResponse = {
    data: {
        type: WebFeedEnum;
        /**
         * Primary key that uniquely identifies this web feed. Generated by Klaviyo
         */
        id: string;
        attributes: {
            /**
             * The name of this web feed
             */
            name: string;
            /**
             * The URL of the web feed
             */
            url: string;
            /**
             * The HTTP method for requesting the web feed
             */
            request_method: 'get' | 'post';
            /**
             * The content-type of the web feed
             */
            content_type: 'json' | 'xml';
            /**
             * Date and time when the web feed was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            created: string;
            /**
             * Date and time when the web feed was updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm)
             */
            updated: string;
            /**
             * The cache status of this web feed if it exists
             */
            status?: 'critical_nightly_refresh_timeout' | 'disabled' | 'ok' | 'warning_nightly_refresh_timeout' | 'warning_periodic_refresh_timeout';
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type CustomMetricPartialUpdateQueryResourceObject = {
    type: CustomMetricEnum;
    /**
     * The ID of the custom metric
     */
    id: string;
    attributes: {
        /**
         * The name for this custom metric. Names must be unique across the account.         Attempting to create a metric with a duplicate name will return a 400 status code.
         */
        name?: string | null;
        definition?: CustomMetricDefinition;
    };
};
type CustomMetricPartialUpdateQuery = {
    data: CustomMetricPartialUpdateQueryResourceObject;
};
type PatchCustomMetricResponse = {
    data: {
        type: CustomMetricEnum;
        /**
         * The ID of the custom metric
         */
        id: string;
        attributes: {
            /**
             * The name for this custom metric. Names must be unique across the account.         Attempting to create a metric with a duplicate name will return a 400 status code.
             */
            name: string;
            /**
             * The datetime when this custom metric was created.
             */
            created: string;
            /**
             * The datetime when this custom metric was updated.
             */
            updated: string;
            definition: CustomMetricDefinition;
        };
        relationships?: {
            metrics?: {
                data?: Array<{
                    type: MetricEnum;
                    /**
                     * Related metrics
                     */
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type MappedMetricPartialUpdateQueryResourceObject = {
    type: MappedMetricEnum;
    /**
     * The type of mapping.
     */
    id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    relationships?: {
        metric?: {
            data?: {
                type: MetricEnum;
                /**
                 * The ID of the metric for this mapping. A null value will unset the mapping.
                 */
                id: string;
            };
        };
        'custom-metric'?: {
            data?: {
                type: CustomMetricEnum;
                /**
                 * The ID of the custom metric for this mapping. A null value will unset the mapping.
                 */
                id: string;
            };
        };
    };
};
type MappedMetricPartialUpdateQuery = {
    data: MappedMetricPartialUpdateQueryResourceObject;
};
type PatchMappedMetricResponse = {
    data: {
        type: MappedMetricEnum;
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
        attributes: {
            /**
             * The datetime when this mapping was last updated.
             */
            updated: string;
        };
        relationships?: {
            metric?: {
                data?: {
                    type: MetricEnum;
                    /**
                     * The ID of the metric for this mapping.
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
            'custom-metric'?: {
                data?: {
                    type: CustomMetricEnum;
                    /**
                     * The ID of the custom metric for this mapping.
                     */
                    id: string;
                };
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type ListMembersDeleteQuery = {
    data: Array<{
        type: ProfileEnum;
        id: string;
    }>;
};
type DeleteTagGroupResponse = {
    data: {
        type: TagGroupEnum;
        /**
         * The Tag Group ID
         */
        id: string;
        attributes: {
            /**
             * The Tag Group name
             */
            name: string;
            /**
             * If a tag group is non-exclusive, any given related resource (campaign, flow, etc.) can be linked to multiple tags from that tag group. If a tag group is exclusive, any given related resource can only be linked to one tag from that tag group.
             */
            exclusive: boolean;
            /**
             * Every company automatically has one Default Tag Group. The Default Tag Group cannot be deleted, and no other Default Tag Groups can be created. This value is true for the Default Tag Group and false for all other Tag Groups.
             */
            default: boolean;
        };
        relationships?: {
            tags?: {
                data?: Array<{
                    type: TagEnum;
                    id: string;
                }>;
                links?: RelationshipLinks;
            };
        };
        links: ObjectLinks;
    };
    links?: ObjectLinks;
};
type RelationshipLinks = {
    self: string;
    related: string;
};
type OnlyRelatedLinks = {
    related: string;
};
type CollectionLinks = {
    self: string;
    first?: string;
    last?: string;
    prev?: string;
    next?: string;
};
type ObjectLinks = {
    self: string;
};
type GetAccountsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[account]'?: Array<'test_account' | 'contact_information' | 'contact_information.default_sender_name' | 'contact_information.default_sender_email' | 'contact_information.website_url' | 'contact_information.organization_name' | 'contact_information.street_address' | 'contact_information.street_address.address1' | 'contact_information.street_address.address2' | 'contact_information.street_address.city' | 'contact_information.street_address.region' | 'contact_information.street_address.country' | 'contact_information.street_address.zip' | 'industry' | 'timezone' | 'preferred_currency' | 'public_api_key' | 'locale'>;
    };
    url: '/api/accounts';
};
type GetAccountsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetAccountsError = GetAccountsErrors[keyof GetAccountsErrors];
type GetAccountsResponses = {
    /**
     * Success
     */
    200: GetAccountResponseCollection;
};
type GetAccountsResponse = GetAccountsResponses[keyof GetAccountsResponses];
type GetAccountData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the account
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[account]'?: Array<'test_account' | 'contact_information' | 'contact_information.default_sender_name' | 'contact_information.default_sender_email' | 'contact_information.website_url' | 'contact_information.organization_name' | 'contact_information.street_address' | 'contact_information.street_address.address1' | 'contact_information.street_address.address2' | 'contact_information.street_address.city' | 'contact_information.street_address.region' | 'contact_information.street_address.country' | 'contact_information.street_address.zip' | 'industry' | 'timezone' | 'preferred_currency' | 'public_api_key' | 'locale'>;
    };
    url: '/api/accounts/{id}';
};
type GetAccountErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetAccountError = GetAccountErrors[keyof GetAccountErrors];
type GetAccountResponses = {
    /**
     * Success
     */
    200: GetAccountResponse;
};
type GetAccountResponse2 = GetAccountResponses[keyof GetAccountResponses];
type GetCampaignsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-message]'?: Array<'definition' | 'definition.channel' | 'definition.label' | 'definition.content' | 'definition.content.subject' | 'definition.content.preview_text' | 'definition.content.from_email' | 'definition.content.from_label' | 'definition.content.reply_to_email' | 'definition.content.cc_email' | 'definition.content.bcc_email' | 'definition.content.body' | 'definition.content.media_url' | 'definition.render_options' | 'definition.render_options.shorten_links' | 'definition.render_options.add_org_prefix' | 'definition.render_options.add_info_link' | 'definition.render_options.add_opt_out_language' | 'definition.notification_type' | 'definition.content.title' | 'definition.content.dynamic_image' | 'definition.kv_pairs' | 'definition.options' | 'definition.options.on_open' | 'definition.options.on_open.type' | 'definition.options.on_open.ios_deep_link' | 'definition.options.on_open.android_deep_link' | 'definition.options.badge' | 'definition.options.badge.display' | 'definition.options.badge.badge_options' | 'definition.options.badge.badge_options.badge_config' | 'definition.options.badge.badge_options.value' | 'definition.options.badge.badge_options.set_from_property' | 'definition.options.play_sound' | 'send_times' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign]'?: Array<'name' | 'status' | 'archived' | 'audiences' | 'audiences.included' | 'audiences.excluded' | 'send_options' | 'send_options.use_smart_sending' | 'tracking_options' | 'tracking_options.add_tracking_params' | 'tracking_options.custom_tracking_params' | 'tracking_options.is_tracking_clicks' | 'tracking_options.is_tracking_opens' | 'send_strategy' | 'send_strategy.method' | 'send_strategy.datetime' | 'send_strategy.options' | 'send_strategy.options.is_local' | 'send_strategy.options.send_past_recipients_immediately' | 'send_strategy.date' | 'send_strategy.throttle_percentage' | 'created_at' | 'scheduled_at' | 'updated_at' | 'send_time'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`messages.channel`: `equals`<br>`name`: `contains`<br>`status`: `any`, `equals`<br>`archived`: `equals`<br>`created_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`scheduled_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'campaign-messages' | 'tags'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created_at' | '-created_at' | 'id' | '-id' | 'name' | '-name' | 'scheduled_at' | '-scheduled_at' | 'updated_at' | '-updated_at';
    };
    url: '/api/campaigns';
};
type GetCampaignsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignsError = GetCampaignsErrors[keyof GetCampaignsErrors];
type GetCampaignsResponses = {
    /**
     * Success
     */
    200: GetCampaignResponseCollectionCompoundDocument;
};
type GetCampaignsResponse = GetCampaignsResponses[keyof GetCampaignsResponses];
type CreateCampaignData = {
    /**
     * Creates a campaign from parameters
     */
    body: CampaignCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/campaigns';
};
type CreateCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCampaignError = CreateCampaignErrors[keyof CreateCampaignErrors];
type CreateCampaignResponses = {
    /**
     * Success
     */
    201: PostCampaignResponse;
};
type CreateCampaignResponse = CreateCampaignResponses[keyof CreateCampaignResponses];
type DeleteCampaignData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The campaign ID to be deleted
         */
        id: string;
    };
    query?: never;
    url: '/api/campaigns/{id}';
};
type DeleteCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCampaignError = DeleteCampaignErrors[keyof DeleteCampaignErrors];
type DeleteCampaignResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCampaignResponse = DeleteCampaignResponses[keyof DeleteCampaignResponses];
type GetCampaignData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The campaign ID to be retrieved
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-message]'?: Array<'definition' | 'definition.channel' | 'definition.label' | 'definition.content' | 'definition.content.subject' | 'definition.content.preview_text' | 'definition.content.from_email' | 'definition.content.from_label' | 'definition.content.reply_to_email' | 'definition.content.cc_email' | 'definition.content.bcc_email' | 'definition.content.body' | 'definition.content.media_url' | 'definition.render_options' | 'definition.render_options.shorten_links' | 'definition.render_options.add_org_prefix' | 'definition.render_options.add_info_link' | 'definition.render_options.add_opt_out_language' | 'definition.notification_type' | 'definition.content.title' | 'definition.content.dynamic_image' | 'definition.kv_pairs' | 'definition.options' | 'definition.options.on_open' | 'definition.options.on_open.type' | 'definition.options.on_open.ios_deep_link' | 'definition.options.on_open.android_deep_link' | 'definition.options.badge' | 'definition.options.badge.display' | 'definition.options.badge.badge_options' | 'definition.options.badge.badge_options.badge_config' | 'definition.options.badge.badge_options.value' | 'definition.options.badge.badge_options.set_from_property' | 'definition.options.play_sound' | 'send_times' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign]'?: Array<'name' | 'status' | 'archived' | 'audiences' | 'audiences.included' | 'audiences.excluded' | 'send_options' | 'send_options.use_smart_sending' | 'tracking_options' | 'tracking_options.add_tracking_params' | 'tracking_options.custom_tracking_params' | 'tracking_options.is_tracking_clicks' | 'tracking_options.is_tracking_opens' | 'send_strategy' | 'send_strategy.method' | 'send_strategy.datetime' | 'send_strategy.options' | 'send_strategy.options.is_local' | 'send_strategy.options.send_past_recipients_immediately' | 'send_strategy.date' | 'send_strategy.throttle_percentage' | 'created_at' | 'scheduled_at' | 'updated_at' | 'send_time'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'campaign-messages' | 'tags'>;
    };
    url: '/api/campaigns/{id}';
};
type GetCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignError = GetCampaignErrors[keyof GetCampaignErrors];
type GetCampaignResponses = {
    /**
     * Success
     */
    200: GetCampaignResponseCompoundDocument;
};
type GetCampaignResponse2 = GetCampaignResponses[keyof GetCampaignResponses];
type UpdateCampaignData = {
    /**
     * Update a campaign and return it
     */
    body: CampaignPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The campaign ID to be retrieved
         */
        id: string;
    };
    query?: never;
    url: '/api/campaigns/{id}';
};
type UpdateCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCampaignError = UpdateCampaignErrors[keyof UpdateCampaignErrors];
type UpdateCampaignResponses = {
    /**
     * Success
     */
    200: PatchCampaignResponse;
};
type UpdateCampaignResponse = UpdateCampaignResponses[keyof UpdateCampaignResponses];
type GetCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The message ID to be retrieved
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-message]'?: Array<'definition' | 'definition.channel' | 'definition.label' | 'definition.content' | 'definition.content.subject' | 'definition.content.preview_text' | 'definition.content.from_email' | 'definition.content.from_label' | 'definition.content.reply_to_email' | 'definition.content.cc_email' | 'definition.content.bcc_email' | 'definition.content.body' | 'definition.content.media_url' | 'definition.render_options' | 'definition.render_options.shorten_links' | 'definition.render_options.add_org_prefix' | 'definition.render_options.add_info_link' | 'definition.render_options.add_opt_out_language' | 'definition.notification_type' | 'definition.content.title' | 'definition.content.dynamic_image' | 'definition.kv_pairs' | 'definition.options' | 'definition.options.on_open' | 'definition.options.on_open.type' | 'definition.options.on_open.ios_deep_link' | 'definition.options.on_open.android_deep_link' | 'definition.options.badge' | 'definition.options.badge.display' | 'definition.options.badge.badge_options' | 'definition.options.badge.badge_options.badge_config' | 'definition.options.badge.badge_options.value' | 'definition.options.badge.badge_options.set_from_property' | 'definition.options.play_sound' | 'send_times' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign]'?: Array<'name' | 'status' | 'archived' | 'audiences' | 'audiences.included' | 'audiences.excluded' | 'send_options' | 'send_options.use_smart_sending' | 'tracking_options' | 'tracking_options.add_tracking_params' | 'tracking_options.custom_tracking_params' | 'tracking_options.is_tracking_clicks' | 'tracking_options.is_tracking_opens' | 'send_strategy' | 'send_strategy.method' | 'send_strategy.datetime' | 'send_strategy.options' | 'send_strategy.options.is_local' | 'send_strategy.options.send_past_recipients_immediately' | 'send_strategy.date' | 'send_strategy.throttle_percentage' | 'created_at' | 'scheduled_at' | 'updated_at' | 'send_time'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[image]'?: Array<'name' | 'image_url' | 'format' | 'size' | 'hidden' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'campaign' | 'image' | 'template'>;
    };
    url: '/api/campaign-messages/{id}';
};
type GetCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignMessageError = GetCampaignMessageErrors[keyof GetCampaignMessageErrors];
type GetCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetCampaignMessageResponseCompoundDocument;
};
type GetCampaignMessageResponse = GetCampaignMessageResponses[keyof GetCampaignMessageResponses];
type UpdateCampaignMessageData = {
    /**
     * Update a message and return it
     */
    body: CampaignMessagePartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The message ID to be retrieved
         */
        id: string;
    };
    query?: never;
    url: '/api/campaign-messages/{id}';
};
type UpdateCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCampaignMessageError = UpdateCampaignMessageErrors[keyof UpdateCampaignMessageErrors];
type UpdateCampaignMessageResponses = {
    /**
     * Success
     */
    200: PatchCampaignMessageResponse;
};
type UpdateCampaignMessageResponse = UpdateCampaignMessageResponses[keyof UpdateCampaignMessageResponses];
type GetCampaignSendJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the campaign to send
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-send-job]'?: Array<'status'>;
    };
    url: '/api/campaign-send-jobs/{id}';
};
type GetCampaignSendJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignSendJobError = GetCampaignSendJobErrors[keyof GetCampaignSendJobErrors];
type GetCampaignSendJobResponses = {
    /**
     * Success
     */
    200: GetCampaignSendJobResponse;
};
type GetCampaignSendJobResponse2 = GetCampaignSendJobResponses[keyof GetCampaignSendJobResponses];
type CancelCampaignSendData = {
    /**
     * Permanently cancel the campaign, setting the status to CANCELED or
     * revert the campaign, setting the status back to DRAFT
     */
    body: CampaignSendJobPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the currently sending campaign to cancel or revert
         */
        id: string;
    };
    query?: never;
    url: '/api/campaign-send-jobs/{id}';
};
type CancelCampaignSendErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CancelCampaignSendError = CancelCampaignSendErrors[keyof CancelCampaignSendErrors];
type CancelCampaignSendResponses = {
    /**
     * Success
     */
    204: void;
};
type CancelCampaignSendResponse = CancelCampaignSendResponses[keyof CancelCampaignSendResponses];
type GetCampaignRecipientEstimationJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the campaign to get recipient estimation status
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-recipient-estimation-job]'?: Array<'status'>;
    };
    url: '/api/campaign-recipient-estimation-jobs/{id}';
};
type GetCampaignRecipientEstimationJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignRecipientEstimationJobError = GetCampaignRecipientEstimationJobErrors[keyof GetCampaignRecipientEstimationJobErrors];
type GetCampaignRecipientEstimationJobResponses = {
    /**
     * Success
     */
    200: GetCampaignRecipientEstimationJobResponse;
};
type GetCampaignRecipientEstimationJobResponse2 = GetCampaignRecipientEstimationJobResponses[keyof GetCampaignRecipientEstimationJobResponses];
type GetCampaignRecipientEstimationData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the campaign for which to get the estimated number of recipients
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-recipient-estimation]'?: Array<'estimated_recipient_count'>;
    };
    url: '/api/campaign-recipient-estimations/{id}';
};
type GetCampaignRecipientEstimationErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignRecipientEstimationError = GetCampaignRecipientEstimationErrors[keyof GetCampaignRecipientEstimationErrors];
type GetCampaignRecipientEstimationResponses = {
    /**
     * Success
     */
    200: GetCampaignRecipientEstimationResponse;
};
type GetCampaignRecipientEstimationResponse2 = GetCampaignRecipientEstimationResponses[keyof GetCampaignRecipientEstimationResponses];
type CreateCampaignCloneData = {
    /**
     * Clones a campaign from an existing campaign
     */
    body: CampaignCloneQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/campaign-clone';
};
type CreateCampaignCloneErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCampaignCloneError = CreateCampaignCloneErrors[keyof CreateCampaignCloneErrors];
type CreateCampaignCloneResponses = {
    /**
     * Success
     */
    201: PostCampaignResponse;
};
type CreateCampaignCloneResponse = CreateCampaignCloneResponses[keyof CreateCampaignCloneResponses];
type AssignTemplateToCampaignMessageData = {
    /**
     * Takes a reusable template, clones it, and assigns the non-reusable clone to the message.
     */
    body: CampaignMessageAssignTemplateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/campaign-message-assign-template';
};
type AssignTemplateToCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type AssignTemplateToCampaignMessageError = AssignTemplateToCampaignMessageErrors[keyof AssignTemplateToCampaignMessageErrors];
type AssignTemplateToCampaignMessageResponses = {
    /**
     * Success
     */
    200: PostCampaignMessageResponse;
};
type AssignTemplateToCampaignMessageResponse = AssignTemplateToCampaignMessageResponses[keyof AssignTemplateToCampaignMessageResponses];
type SendCampaignData = {
    /**
     * Trigger the campaign to send asynchronously
     */
    body: CampaignSendJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/campaign-send-jobs';
};
type SendCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type SendCampaignError = SendCampaignErrors[keyof SendCampaignErrors];
type SendCampaignResponses = {
    /**
     * Success
     */
    202: PostCampaignSendJobResponse;
};
type SendCampaignResponse = SendCampaignResponses[keyof SendCampaignResponses];
type RefreshCampaignRecipientEstimationData = {
    /**
     * Trigger an asynchronous job to update the estimated number of recipients
     * for the given campaign ID. Use the `Get Campaign Recipient Estimation
     * Job` endpoint to retrieve the status of this estimation job. Use the
     * `Get Campaign Recipient Estimation` endpoint to retrieve the estimated
     * recipient count for a given campaign.
     */
    body: CampaignRecipientEstimationJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/campaign-recipient-estimation-jobs';
};
type RefreshCampaignRecipientEstimationErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RefreshCampaignRecipientEstimationError = RefreshCampaignRecipientEstimationErrors[keyof RefreshCampaignRecipientEstimationErrors];
type RefreshCampaignRecipientEstimationResponses = {
    /**
     * Success
     */
    202: PostCampaignRecipientEstimationJobResponse;
};
type RefreshCampaignRecipientEstimationResponse = RefreshCampaignRecipientEstimationResponses[keyof RefreshCampaignRecipientEstimationResponses];
type GetCampaignForCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign]'?: Array<'name' | 'status' | 'archived' | 'audiences' | 'audiences.included' | 'audiences.excluded' | 'send_options' | 'send_options.use_smart_sending' | 'tracking_options' | 'tracking_options.add_tracking_params' | 'tracking_options.custom_tracking_params' | 'tracking_options.is_tracking_clicks' | 'tracking_options.is_tracking_opens' | 'send_strategy' | 'send_strategy.method' | 'send_strategy.datetime' | 'send_strategy.options' | 'send_strategy.options.is_local' | 'send_strategy.options.send_past_recipients_immediately' | 'send_strategy.date' | 'send_strategy.throttle_percentage' | 'created_at' | 'scheduled_at' | 'updated_at' | 'send_time'>;
    };
    url: '/api/campaign-messages/{id}/campaign';
};
type GetCampaignForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignForCampaignMessageError = GetCampaignForCampaignMessageErrors[keyof GetCampaignForCampaignMessageErrors];
type GetCampaignForCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetCampaignResponse;
};
type GetCampaignForCampaignMessageResponse = GetCampaignForCampaignMessageResponses[keyof GetCampaignForCampaignMessageResponses];
type GetCampaignIdForCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/campaign-messages/{id}/relationships/campaign';
};
type GetCampaignIdForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignIdForCampaignMessageError = GetCampaignIdForCampaignMessageErrors[keyof GetCampaignIdForCampaignMessageErrors];
type GetCampaignIdForCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetCampaignMessageCampaignRelationshipResponse;
};
type GetCampaignIdForCampaignMessageResponse = GetCampaignIdForCampaignMessageResponses[keyof GetCampaignIdForCampaignMessageResponses];
type GetTemplateForCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
    };
    url: '/api/campaign-messages/{id}/template';
};
type GetTemplateForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTemplateForCampaignMessageError = GetTemplateForCampaignMessageErrors[keyof GetTemplateForCampaignMessageErrors];
type GetTemplateForCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetTemplateResponse;
};
type GetTemplateForCampaignMessageResponse = GetTemplateForCampaignMessageResponses[keyof GetTemplateForCampaignMessageResponses];
type GetTemplateIdForCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/campaign-messages/{id}/relationships/template';
};
type GetTemplateIdForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTemplateIdForCampaignMessageError = GetTemplateIdForCampaignMessageErrors[keyof GetTemplateIdForCampaignMessageErrors];
type GetTemplateIdForCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetCampaignMessageTemplateRelationshipResponse;
};
type GetTemplateIdForCampaignMessageResponse = GetTemplateIdForCampaignMessageResponses[keyof GetTemplateIdForCampaignMessageResponses];
type GetImageForCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[image]'?: Array<'name' | 'image_url' | 'format' | 'size' | 'hidden' | 'updated_at'>;
    };
    url: '/api/campaign-messages/{id}/image';
};
type GetImageForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetImageForCampaignMessageError = GetImageForCampaignMessageErrors[keyof GetImageForCampaignMessageErrors];
type GetImageForCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetImageResponse;
};
type GetImageForCampaignMessageResponse = GetImageForCampaignMessageResponses[keyof GetImageForCampaignMessageResponses];
type GetImageIdForCampaignMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/campaign-messages/{id}/relationships/image';
};
type GetImageIdForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetImageIdForCampaignMessageError = GetImageIdForCampaignMessageErrors[keyof GetImageIdForCampaignMessageErrors];
type GetImageIdForCampaignMessageResponses = {
    /**
     * Success
     */
    200: GetCampaignMessageImageRelationshipResponse;
};
type GetImageIdForCampaignMessageResponse = GetImageIdForCampaignMessageResponses[keyof GetImageIdForCampaignMessageResponses];
type UpdateImageForCampaignMessageData = {
    body: CampaignMessageImageUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/campaign-messages/{id}/relationships/image';
};
type UpdateImageForCampaignMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateImageForCampaignMessageError = UpdateImageForCampaignMessageErrors[keyof UpdateImageForCampaignMessageErrors];
type UpdateImageForCampaignMessageResponses = {
    /**
     * Success
     */
    204: void;
};
type UpdateImageForCampaignMessageResponse = UpdateImageForCampaignMessageResponses[keyof UpdateImageForCampaignMessageResponses];
type GetTagsForCampaignData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
    };
    url: '/api/campaigns/{id}/tags';
};
type GetTagsForCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagsForCampaignError = GetTagsForCampaignErrors[keyof GetTagsForCampaignErrors];
type GetTagsForCampaignResponses = {
    /**
     * Success
     */
    200: GetTagResponseCollection;
};
type GetTagsForCampaignResponse = GetTagsForCampaignResponses[keyof GetTagsForCampaignResponses];
type GetTagIdsForCampaignData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/campaigns/{id}/relationships/tags';
};
type GetTagIdsForCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagIdsForCampaignError = GetTagIdsForCampaignErrors[keyof GetTagIdsForCampaignErrors];
type GetTagIdsForCampaignResponses = {
    /**
     * Success
     */
    200: GetCampaignTagsRelationshipsResponseCollection;
};
type GetTagIdsForCampaignResponse = GetTagIdsForCampaignResponses[keyof GetTagIdsForCampaignResponses];
type GetMessagesForCampaignData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign-message]'?: Array<'definition' | 'definition.channel' | 'definition.label' | 'definition.content' | 'definition.content.subject' | 'definition.content.preview_text' | 'definition.content.from_email' | 'definition.content.from_label' | 'definition.content.reply_to_email' | 'definition.content.cc_email' | 'definition.content.bcc_email' | 'definition.content.body' | 'definition.content.media_url' | 'definition.render_options' | 'definition.render_options.shorten_links' | 'definition.render_options.add_org_prefix' | 'definition.render_options.add_info_link' | 'definition.render_options.add_opt_out_language' | 'definition.notification_type' | 'definition.content.title' | 'definition.content.dynamic_image' | 'definition.kv_pairs' | 'definition.options' | 'definition.options.on_open' | 'definition.options.on_open.type' | 'definition.options.on_open.ios_deep_link' | 'definition.options.on_open.android_deep_link' | 'definition.options.badge' | 'definition.options.badge.display' | 'definition.options.badge.badge_options' | 'definition.options.badge.badge_options.badge_config' | 'definition.options.badge.badge_options.value' | 'definition.options.badge.badge_options.set_from_property' | 'definition.options.play_sound' | 'send_times' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[campaign]'?: Array<'name' | 'status' | 'archived' | 'audiences' | 'audiences.included' | 'audiences.excluded' | 'send_options' | 'send_options.use_smart_sending' | 'tracking_options' | 'tracking_options.add_tracking_params' | 'tracking_options.custom_tracking_params' | 'tracking_options.is_tracking_clicks' | 'tracking_options.is_tracking_opens' | 'send_strategy' | 'send_strategy.method' | 'send_strategy.datetime' | 'send_strategy.options' | 'send_strategy.options.is_local' | 'send_strategy.options.send_past_recipients_immediately' | 'send_strategy.date' | 'send_strategy.throttle_percentage' | 'created_at' | 'scheduled_at' | 'updated_at' | 'send_time'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[image]'?: Array<'name' | 'image_url' | 'format' | 'size' | 'hidden' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'campaign' | 'image' | 'template'>;
    };
    url: '/api/campaigns/{id}/campaign-messages';
};
type GetMessagesForCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMessagesForCampaignError = GetMessagesForCampaignErrors[keyof GetMessagesForCampaignErrors];
type GetMessagesForCampaignResponses = {
    /**
     * Success
     */
    200: GetCampaignMessageResponseCollectionCompoundDocument;
};
type GetMessagesForCampaignResponse = GetMessagesForCampaignResponses[keyof GetMessagesForCampaignResponses];
type GetMessageIdsForCampaignData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/campaigns/{id}/relationships/campaign-messages';
};
type GetMessageIdsForCampaignErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMessageIdsForCampaignError = GetMessageIdsForCampaignErrors[keyof GetMessageIdsForCampaignErrors];
type GetMessageIdsForCampaignResponses = {
    /**
     * Success
     */
    200: GetCampaignMessagesRelationshipsResponseCollection;
};
type GetMessageIdsForCampaignResponse = GetMessageIdsForCampaignResponses[keyof GetMessageIdsForCampaignResponses];
type GetCatalogItemsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item]'?: Array<'external_id' | 'title' | 'description' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'variants'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-items';
};
type GetCatalogItemsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCatalogItemsError = GetCatalogItemsErrors[keyof GetCatalogItemsErrors];
type GetCatalogItemsResponses = {
    /**
     * Success
     */
    200: GetCatalogItemResponseCollectionCompoundDocument;
};
type GetCatalogItemsResponse = GetCatalogItemsResponses[keyof GetCatalogItemsResponses];
type CreateCatalogItemData = {
    body: CatalogItemCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-items';
};
type CreateCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCatalogItemError = CreateCatalogItemErrors[keyof CreateCatalogItemErrors];
type CreateCatalogItemResponses = {
    /**
     * Success
     */
    201: PostCatalogItemResponse;
};
type CreateCatalogItemResponse = CreateCatalogItemResponses[keyof CreateCatalogItemResponses];
type DeleteCatalogItemData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-items/{id}';
};
type DeleteCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCatalogItemError = DeleteCatalogItemErrors[keyof DeleteCatalogItemErrors];
type DeleteCatalogItemResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCatalogItemResponse = DeleteCatalogItemResponses[keyof DeleteCatalogItemResponses];
type GetCatalogItemData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item]'?: Array<'external_id' | 'title' | 'description' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'variants'>;
    };
    url: '/api/catalog-items/{id}';
};
type GetCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCatalogItemError = GetCatalogItemErrors[keyof GetCatalogItemErrors];
type GetCatalogItemResponses = {
    /**
     * Success
     */
    200: GetCatalogItemResponseCompoundDocument;
};
type GetCatalogItemResponse = GetCatalogItemResponses[keyof GetCatalogItemResponses];
type UpdateCatalogItemData = {
    body: CatalogItemUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-items/{id}';
};
type UpdateCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCatalogItemError = UpdateCatalogItemErrors[keyof UpdateCatalogItemErrors];
type UpdateCatalogItemResponses = {
    /**
     * Success
     */
    200: PatchCatalogItemResponse;
};
type UpdateCatalogItemResponse = UpdateCatalogItemResponses[keyof UpdateCatalogItemResponses];
type GetCatalogVariantsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-variants';
};
type GetCatalogVariantsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCatalogVariantsError = GetCatalogVariantsErrors[keyof GetCatalogVariantsErrors];
type GetCatalogVariantsResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantResponseCollection;
};
type GetCatalogVariantsResponse = GetCatalogVariantsResponses[keyof GetCatalogVariantsResponses];
type CreateCatalogVariantData = {
    body: CatalogVariantCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-variants';
};
type CreateCatalogVariantErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCatalogVariantError = CreateCatalogVariantErrors[keyof CreateCatalogVariantErrors];
type CreateCatalogVariantResponses = {
    /**
     * Success
     */
    201: PostCatalogVariantResponse;
};
type CreateCatalogVariantResponse = CreateCatalogVariantResponses[keyof CreateCatalogVariantResponses];
type DeleteCatalogVariantData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-variants/{id}';
};
type DeleteCatalogVariantErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCatalogVariantError = DeleteCatalogVariantErrors[keyof DeleteCatalogVariantErrors];
type DeleteCatalogVariantResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCatalogVariantResponse = DeleteCatalogVariantResponses[keyof DeleteCatalogVariantResponses];
type GetCatalogVariantData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
    };
    url: '/api/catalog-variants/{id}';
};
type GetCatalogVariantErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCatalogVariantError = GetCatalogVariantErrors[keyof GetCatalogVariantErrors];
type GetCatalogVariantResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantResponse;
};
type GetCatalogVariantResponse2 = GetCatalogVariantResponses[keyof GetCatalogVariantResponses];
type UpdateCatalogVariantData = {
    body: CatalogVariantUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-variants/{id}';
};
type UpdateCatalogVariantErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCatalogVariantError = UpdateCatalogVariantErrors[keyof UpdateCatalogVariantErrors];
type UpdateCatalogVariantResponses = {
    /**
     * Success
     */
    200: PatchCatalogVariantResponse;
};
type UpdateCatalogVariantResponse = UpdateCatalogVariantResponses[keyof UpdateCatalogVariantResponses];
type GetCatalogCategoriesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category]'?: Array<'external_id' | 'name' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-categories';
};
type GetCatalogCategoriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCatalogCategoriesError = GetCatalogCategoriesErrors[keyof GetCatalogCategoriesErrors];
type GetCatalogCategoriesResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryResponseCollection;
};
type GetCatalogCategoriesResponse = GetCatalogCategoriesResponses[keyof GetCatalogCategoriesResponses];
type CreateCatalogCategoryData = {
    body: CatalogCategoryCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-categories';
};
type CreateCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCatalogCategoryError = CreateCatalogCategoryErrors[keyof CreateCatalogCategoryErrors];
type CreateCatalogCategoryResponses = {
    /**
     * Success
     */
    201: PostCatalogCategoryResponse;
};
type CreateCatalogCategoryResponse = CreateCatalogCategoryResponses[keyof CreateCatalogCategoryResponses];
type DeleteCatalogCategoryData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-categories/{id}';
};
type DeleteCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCatalogCategoryError = DeleteCatalogCategoryErrors[keyof DeleteCatalogCategoryErrors];
type DeleteCatalogCategoryResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCatalogCategoryResponse = DeleteCatalogCategoryResponses[keyof DeleteCatalogCategoryResponses];
type GetCatalogCategoryData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category]'?: Array<'external_id' | 'name' | 'updated'>;
    };
    url: '/api/catalog-categories/{id}';
};
type GetCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCatalogCategoryError = GetCatalogCategoryErrors[keyof GetCatalogCategoryErrors];
type GetCatalogCategoryResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryResponse;
};
type GetCatalogCategoryResponse2 = GetCatalogCategoryResponses[keyof GetCatalogCategoryResponses];
type UpdateCatalogCategoryData = {
    body: CatalogCategoryUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-categories/{id}';
};
type UpdateCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCatalogCategoryError = UpdateCatalogCategoryErrors[keyof UpdateCatalogCategoryErrors];
type UpdateCatalogCategoryResponses = {
    /**
     * Success
     */
    200: PatchCatalogCategoryResponse;
};
type UpdateCatalogCategoryResponse = UpdateCatalogCategoryResponses[keyof UpdateCatalogCategoryResponses];
type GetBulkCreateCatalogItemsJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-item-bulk-create-jobs';
};
type GetBulkCreateCatalogItemsJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateCatalogItemsJobsError = GetBulkCreateCatalogItemsJobsErrors[keyof GetBulkCreateCatalogItemsJobsErrors];
type GetBulkCreateCatalogItemsJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogItemCreateJobResponseCollectionCompoundDocument;
};
type GetBulkCreateCatalogItemsJobsResponse = GetBulkCreateCatalogItemsJobsResponses[keyof GetBulkCreateCatalogItemsJobsResponses];
type BulkCreateCatalogItemsData = {
    body: CatalogItemCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-item-bulk-create-jobs';
};
type BulkCreateCatalogItemsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateCatalogItemsError = BulkCreateCatalogItemsErrors[keyof BulkCreateCatalogItemsErrors];
type BulkCreateCatalogItemsResponses = {
    /**
     * Success
     */
    202: PostCatalogItemCreateJobResponse;
};
type BulkCreateCatalogItemsResponse = BulkCreateCatalogItemsResponses[keyof BulkCreateCatalogItemsResponses];
type GetBulkCreateCatalogItemsJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item]'?: Array<'external_id' | 'title' | 'description' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'items'>;
    };
    url: '/api/catalog-item-bulk-create-jobs/{job_id}';
};
type GetBulkCreateCatalogItemsJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateCatalogItemsJobError = GetBulkCreateCatalogItemsJobErrors[keyof GetBulkCreateCatalogItemsJobErrors];
type GetBulkCreateCatalogItemsJobResponses = {
    /**
     * Success
     */
    200: GetCatalogItemCreateJobResponseCompoundDocument;
};
type GetBulkCreateCatalogItemsJobResponse = GetBulkCreateCatalogItemsJobResponses[keyof GetBulkCreateCatalogItemsJobResponses];
type GetBulkUpdateCatalogItemsJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item-bulk-update-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-item-bulk-update-jobs';
};
type GetBulkUpdateCatalogItemsJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUpdateCatalogItemsJobsError = GetBulkUpdateCatalogItemsJobsErrors[keyof GetBulkUpdateCatalogItemsJobsErrors];
type GetBulkUpdateCatalogItemsJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogItemUpdateJobResponseCollectionCompoundDocument;
};
type GetBulkUpdateCatalogItemsJobsResponse = GetBulkUpdateCatalogItemsJobsResponses[keyof GetBulkUpdateCatalogItemsJobsResponses];
type BulkUpdateCatalogItemsData = {
    body: CatalogItemUpdateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-item-bulk-update-jobs';
};
type BulkUpdateCatalogItemsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkUpdateCatalogItemsError = BulkUpdateCatalogItemsErrors[keyof BulkUpdateCatalogItemsErrors];
type BulkUpdateCatalogItemsResponses = {
    /**
     * Success
     */
    202: PostCatalogItemUpdateJobResponse;
};
type BulkUpdateCatalogItemsResponse = BulkUpdateCatalogItemsResponses[keyof BulkUpdateCatalogItemsResponses];
type GetBulkUpdateCatalogItemsJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item-bulk-update-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item]'?: Array<'external_id' | 'title' | 'description' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'items'>;
    };
    url: '/api/catalog-item-bulk-update-jobs/{job_id}';
};
type GetBulkUpdateCatalogItemsJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUpdateCatalogItemsJobError = GetBulkUpdateCatalogItemsJobErrors[keyof GetBulkUpdateCatalogItemsJobErrors];
type GetBulkUpdateCatalogItemsJobResponses = {
    /**
     * Success
     */
    200: GetCatalogItemUpdateJobResponseCompoundDocument;
};
type GetBulkUpdateCatalogItemsJobResponse = GetBulkUpdateCatalogItemsJobResponses[keyof GetBulkUpdateCatalogItemsJobResponses];
type GetBulkDeleteCatalogItemsJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-item-bulk-delete-jobs';
};
type GetBulkDeleteCatalogItemsJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkDeleteCatalogItemsJobsError = GetBulkDeleteCatalogItemsJobsErrors[keyof GetBulkDeleteCatalogItemsJobsErrors];
type GetBulkDeleteCatalogItemsJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogItemDeleteJobResponseCollection;
};
type GetBulkDeleteCatalogItemsJobsResponse = GetBulkDeleteCatalogItemsJobsResponses[keyof GetBulkDeleteCatalogItemsJobsResponses];
type BulkDeleteCatalogItemsData = {
    body: CatalogItemDeleteJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-item-bulk-delete-jobs';
};
type BulkDeleteCatalogItemsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkDeleteCatalogItemsError = BulkDeleteCatalogItemsErrors[keyof BulkDeleteCatalogItemsErrors];
type BulkDeleteCatalogItemsResponses = {
    /**
     * Success
     */
    202: PostCatalogItemDeleteJobResponse;
};
type BulkDeleteCatalogItemsResponse = BulkDeleteCatalogItemsResponses[keyof BulkDeleteCatalogItemsResponses];
type GetBulkDeleteCatalogItemsJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
    };
    url: '/api/catalog-item-bulk-delete-jobs/{job_id}';
};
type GetBulkDeleteCatalogItemsJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkDeleteCatalogItemsJobError = GetBulkDeleteCatalogItemsJobErrors[keyof GetBulkDeleteCatalogItemsJobErrors];
type GetBulkDeleteCatalogItemsJobResponses = {
    /**
     * Success
     */
    200: GetCatalogItemDeleteJobResponse;
};
type GetBulkDeleteCatalogItemsJobResponse = GetBulkDeleteCatalogItemsJobResponses[keyof GetBulkDeleteCatalogItemsJobResponses];
type GetBulkCreateVariantsJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-variant-bulk-create-jobs';
};
type GetBulkCreateVariantsJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateVariantsJobsError = GetBulkCreateVariantsJobsErrors[keyof GetBulkCreateVariantsJobsErrors];
type GetBulkCreateVariantsJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantCreateJobResponseCollectionCompoundDocument;
};
type GetBulkCreateVariantsJobsResponse = GetBulkCreateVariantsJobsResponses[keyof GetBulkCreateVariantsJobsResponses];
type BulkCreateCatalogVariantsData = {
    body: CatalogVariantCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-variant-bulk-create-jobs';
};
type BulkCreateCatalogVariantsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateCatalogVariantsError = BulkCreateCatalogVariantsErrors[keyof BulkCreateCatalogVariantsErrors];
type BulkCreateCatalogVariantsResponses = {
    /**
     * Success
     */
    202: PostCatalogVariantCreateJobResponse;
};
type BulkCreateCatalogVariantsResponse = BulkCreateCatalogVariantsResponses[keyof BulkCreateCatalogVariantsResponses];
type GetBulkCreateVariantsJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'variants'>;
    };
    url: '/api/catalog-variant-bulk-create-jobs/{job_id}';
};
type GetBulkCreateVariantsJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateVariantsJobError = GetBulkCreateVariantsJobErrors[keyof GetBulkCreateVariantsJobErrors];
type GetBulkCreateVariantsJobResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantCreateJobResponseCompoundDocument;
};
type GetBulkCreateVariantsJobResponse = GetBulkCreateVariantsJobResponses[keyof GetBulkCreateVariantsJobResponses];
type GetBulkUpdateVariantsJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant-bulk-update-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-variant-bulk-update-jobs';
};
type GetBulkUpdateVariantsJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUpdateVariantsJobsError = GetBulkUpdateVariantsJobsErrors[keyof GetBulkUpdateVariantsJobsErrors];
type GetBulkUpdateVariantsJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantUpdateJobResponseCollectionCompoundDocument;
};
type GetBulkUpdateVariantsJobsResponse = GetBulkUpdateVariantsJobsResponses[keyof GetBulkUpdateVariantsJobsResponses];
type BulkUpdateCatalogVariantsData = {
    body: CatalogVariantUpdateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-variant-bulk-update-jobs';
};
type BulkUpdateCatalogVariantsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkUpdateCatalogVariantsError = BulkUpdateCatalogVariantsErrors[keyof BulkUpdateCatalogVariantsErrors];
type BulkUpdateCatalogVariantsResponses = {
    /**
     * Success
     */
    202: PostCatalogVariantUpdateJobResponse;
};
type BulkUpdateCatalogVariantsResponse = BulkUpdateCatalogVariantsResponses[keyof BulkUpdateCatalogVariantsResponses];
type GetBulkUpdateVariantsJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant-bulk-update-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'variants'>;
    };
    url: '/api/catalog-variant-bulk-update-jobs/{job_id}';
};
type GetBulkUpdateVariantsJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUpdateVariantsJobError = GetBulkUpdateVariantsJobErrors[keyof GetBulkUpdateVariantsJobErrors];
type GetBulkUpdateVariantsJobResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantUpdateJobResponseCompoundDocument;
};
type GetBulkUpdateVariantsJobResponse = GetBulkUpdateVariantsJobResponses[keyof GetBulkUpdateVariantsJobResponses];
type GetBulkDeleteVariantsJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-variant-bulk-delete-jobs';
};
type GetBulkDeleteVariantsJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkDeleteVariantsJobsError = GetBulkDeleteVariantsJobsErrors[keyof GetBulkDeleteVariantsJobsErrors];
type GetBulkDeleteVariantsJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantDeleteJobResponseCollection;
};
type GetBulkDeleteVariantsJobsResponse = GetBulkDeleteVariantsJobsResponses[keyof GetBulkDeleteVariantsJobsResponses];
type BulkDeleteCatalogVariantsData = {
    body: CatalogVariantDeleteJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-variant-bulk-delete-jobs';
};
type BulkDeleteCatalogVariantsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkDeleteCatalogVariantsError = BulkDeleteCatalogVariantsErrors[keyof BulkDeleteCatalogVariantsErrors];
type BulkDeleteCatalogVariantsResponses = {
    /**
     * Success
     */
    202: PostCatalogVariantDeleteJobResponse;
};
type BulkDeleteCatalogVariantsResponse = BulkDeleteCatalogVariantsResponses[keyof BulkDeleteCatalogVariantsResponses];
type GetBulkDeleteVariantsJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
    };
    url: '/api/catalog-variant-bulk-delete-jobs/{job_id}';
};
type GetBulkDeleteVariantsJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkDeleteVariantsJobError = GetBulkDeleteVariantsJobErrors[keyof GetBulkDeleteVariantsJobErrors];
type GetBulkDeleteVariantsJobResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantDeleteJobResponse;
};
type GetBulkDeleteVariantsJobResponse = GetBulkDeleteVariantsJobResponses[keyof GetBulkDeleteVariantsJobResponses];
type GetBulkCreateCategoriesJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-category-bulk-create-jobs';
};
type GetBulkCreateCategoriesJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateCategoriesJobsError = GetBulkCreateCategoriesJobsErrors[keyof GetBulkCreateCategoriesJobsErrors];
type GetBulkCreateCategoriesJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryCreateJobResponseCollectionCompoundDocument;
};
type GetBulkCreateCategoriesJobsResponse = GetBulkCreateCategoriesJobsResponses[keyof GetBulkCreateCategoriesJobsResponses];
type BulkCreateCatalogCategoriesData = {
    body: CatalogCategoryCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-category-bulk-create-jobs';
};
type BulkCreateCatalogCategoriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateCatalogCategoriesError = BulkCreateCatalogCategoriesErrors[keyof BulkCreateCatalogCategoriesErrors];
type BulkCreateCatalogCategoriesResponses = {
    /**
     * Success
     */
    202: PostCatalogCategoryCreateJobResponse;
};
type BulkCreateCatalogCategoriesResponse = BulkCreateCatalogCategoriesResponses[keyof BulkCreateCatalogCategoriesResponses];
type GetBulkCreateCategoriesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category]'?: Array<'external_id' | 'name' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'categories'>;
    };
    url: '/api/catalog-category-bulk-create-jobs/{job_id}';
};
type GetBulkCreateCategoriesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateCategoriesJobError = GetBulkCreateCategoriesJobErrors[keyof GetBulkCreateCategoriesJobErrors];
type GetBulkCreateCategoriesJobResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryCreateJobResponseCompoundDocument;
};
type GetBulkCreateCategoriesJobResponse = GetBulkCreateCategoriesJobResponses[keyof GetBulkCreateCategoriesJobResponses];
type GetBulkUpdateCategoriesJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category-bulk-update-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-category-bulk-update-jobs';
};
type GetBulkUpdateCategoriesJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUpdateCategoriesJobsError = GetBulkUpdateCategoriesJobsErrors[keyof GetBulkUpdateCategoriesJobsErrors];
type GetBulkUpdateCategoriesJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument;
};
type GetBulkUpdateCategoriesJobsResponse = GetBulkUpdateCategoriesJobsResponses[keyof GetBulkUpdateCategoriesJobsResponses];
type BulkUpdateCatalogCategoriesData = {
    body: CatalogCategoryUpdateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-category-bulk-update-jobs';
};
type BulkUpdateCatalogCategoriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkUpdateCatalogCategoriesError = BulkUpdateCatalogCategoriesErrors[keyof BulkUpdateCatalogCategoriesErrors];
type BulkUpdateCatalogCategoriesResponses = {
    /**
     * Success
     */
    202: PostCatalogCategoryUpdateJobResponse;
};
type BulkUpdateCatalogCategoriesResponse = BulkUpdateCatalogCategoriesResponses[keyof BulkUpdateCatalogCategoriesResponses];
type GetBulkUpdateCategoriesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category-bulk-update-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category]'?: Array<'external_id' | 'name' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'categories'>;
    };
    url: '/api/catalog-category-bulk-update-jobs/{job_id}';
};
type GetBulkUpdateCategoriesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUpdateCategoriesJobError = GetBulkUpdateCategoriesJobErrors[keyof GetBulkUpdateCategoriesJobErrors];
type GetBulkUpdateCategoriesJobResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryUpdateJobResponseCompoundDocument;
};
type GetBulkUpdateCategoriesJobResponse = GetBulkUpdateCategoriesJobResponses[keyof GetBulkUpdateCategoriesJobResponses];
type GetBulkDeleteCategoriesJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/catalog-category-bulk-delete-jobs';
};
type GetBulkDeleteCategoriesJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkDeleteCategoriesJobsError = GetBulkDeleteCategoriesJobsErrors[keyof GetBulkDeleteCategoriesJobsErrors];
type GetBulkDeleteCategoriesJobsResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryDeleteJobResponseCollection;
};
type GetBulkDeleteCategoriesJobsResponse = GetBulkDeleteCategoriesJobsResponses[keyof GetBulkDeleteCategoriesJobsResponses];
type BulkDeleteCatalogCategoriesData = {
    body: CatalogCategoryDeleteJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/catalog-category-bulk-delete-jobs';
};
type BulkDeleteCatalogCategoriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkDeleteCatalogCategoriesError = BulkDeleteCatalogCategoriesErrors[keyof BulkDeleteCatalogCategoriesErrors];
type BulkDeleteCatalogCategoriesResponses = {
    /**
     * Success
     */
    202: PostCatalogCategoryDeleteJobResponse;
};
type BulkDeleteCatalogCategoriesResponse = BulkDeleteCatalogCategoriesResponses[keyof BulkDeleteCatalogCategoriesResponses];
type GetBulkDeleteCategoriesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
    };
    url: '/api/catalog-category-bulk-delete-jobs/{job_id}';
};
type GetBulkDeleteCategoriesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkDeleteCategoriesJobError = GetBulkDeleteCategoriesJobErrors[keyof GetBulkDeleteCategoriesJobErrors];
type GetBulkDeleteCategoriesJobResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryDeleteJobResponse;
};
type GetBulkDeleteCategoriesJobResponse = GetBulkDeleteCategoriesJobResponses[keyof GetBulkDeleteCategoriesJobResponses];
type CreateBackInStockSubscriptionData = {
    body: ServerBisSubscriptionCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/back-in-stock-subscriptions';
};
type CreateBackInStockSubscriptionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateBackInStockSubscriptionError = CreateBackInStockSubscriptionErrors[keyof CreateBackInStockSubscriptionErrors];
type CreateBackInStockSubscriptionResponses = {
    /**
     * Success
     */
    202: unknown;
};
type GetItemsForCatalogCategoryData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-item]'?: Array<'external_id' | 'title' | 'description' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'variants'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-categories/{id}/items';
};
type GetItemsForCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetItemsForCatalogCategoryError = GetItemsForCatalogCategoryErrors[keyof GetItemsForCatalogCategoryErrors];
type GetItemsForCatalogCategoryResponses = {
    /**
     * Success
     */
    200: GetCatalogItemResponseCollectionCompoundDocument;
};
type GetItemsForCatalogCategoryResponse = GetItemsForCatalogCategoryResponses[keyof GetItemsForCatalogCategoryResponses];
type RemoveItemsFromCatalogCategoryData = {
    body: CatalogCategoryItemOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-categories/{id}/relationships/items';
};
type RemoveItemsFromCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveItemsFromCatalogCategoryError = RemoveItemsFromCatalogCategoryErrors[keyof RemoveItemsFromCatalogCategoryErrors];
type RemoveItemsFromCatalogCategoryResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveItemsFromCatalogCategoryResponse = RemoveItemsFromCatalogCategoryResponses[keyof RemoveItemsFromCatalogCategoryResponses];
type GetItemIdsForCatalogCategoryData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-categories/{id}/relationships/items';
};
type GetItemIdsForCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetItemIdsForCatalogCategoryError = GetItemIdsForCatalogCategoryErrors[keyof GetItemIdsForCatalogCategoryErrors];
type GetItemIdsForCatalogCategoryResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryItemsRelationshipsResponseCollection;
};
type GetItemIdsForCatalogCategoryResponse = GetItemIdsForCatalogCategoryResponses[keyof GetItemIdsForCatalogCategoryResponses];
type UpdateItemsForCatalogCategoryData = {
    body: CatalogCategoryItemOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-categories/{id}/relationships/items';
};
type UpdateItemsForCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateItemsForCatalogCategoryError = UpdateItemsForCatalogCategoryErrors[keyof UpdateItemsForCatalogCategoryErrors];
type UpdateItemsForCatalogCategoryResponses = {
    /**
     * Success
     */
    204: void;
};
type UpdateItemsForCatalogCategoryResponse = UpdateItemsForCatalogCategoryResponses[keyof UpdateItemsForCatalogCategoryResponses];
type AddItemsToCatalogCategoryData = {
    body: CatalogCategoryItemOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-categories/{id}/relationships/items';
};
type AddItemsToCatalogCategoryErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type AddItemsToCatalogCategoryError = AddItemsToCatalogCategoryErrors[keyof AddItemsToCatalogCategoryErrors];
type AddItemsToCatalogCategoryResponses = {
    /**
     * Success
     */
    204: void;
};
type AddItemsToCatalogCategoryResponse = AddItemsToCatalogCategoryResponses[keyof AddItemsToCatalogCategoryResponses];
type GetVariantsForCatalogItemData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-variant]'?: Array<'external_id' | 'title' | 'description' | 'sku' | 'inventory_policy' | 'inventory_quantity' | 'price' | 'url' | 'image_full_url' | 'image_thumbnail_url' | 'images' | 'custom_metadata' | 'published' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-items/{id}/variants';
};
type GetVariantsForCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetVariantsForCatalogItemError = GetVariantsForCatalogItemErrors[keyof GetVariantsForCatalogItemErrors];
type GetVariantsForCatalogItemResponses = {
    /**
     * Success
     */
    200: GetCatalogVariantResponseCollection;
};
type GetVariantsForCatalogItemResponse = GetVariantsForCatalogItemResponses[keyof GetVariantsForCatalogItemResponses];
type GetVariantIdsForCatalogItemData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-items/{id}/relationships/variants';
};
type GetVariantIdsForCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetVariantIdsForCatalogItemError = GetVariantIdsForCatalogItemErrors[keyof GetVariantIdsForCatalogItemErrors];
type GetVariantIdsForCatalogItemResponses = {
    /**
     * Success
     */
    200: GetCatalogItemVariantsRelationshipsResponseCollection;
};
type GetVariantIdsForCatalogItemResponse = GetVariantIdsForCatalogItemResponses[keyof GetVariantIdsForCatalogItemResponses];
type GetCategoriesForCatalogItemData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[catalog-category]'?: Array<'external_id' | 'name' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-items/{id}/categories';
};
type GetCategoriesForCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCategoriesForCatalogItemError = GetCategoriesForCatalogItemErrors[keyof GetCategoriesForCatalogItemErrors];
type GetCategoriesForCatalogItemResponses = {
    /**
     * Success
     */
    200: GetCatalogCategoryResponseCollection;
};
type GetCategoriesForCatalogItemResponse = GetCategoriesForCatalogItemResponses[keyof GetCategoriesForCatalogItemResponses];
type RemoveCategoriesFromCatalogItemData = {
    body: CatalogItemCategoryOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-items/{id}/relationships/categories';
};
type RemoveCategoriesFromCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveCategoriesFromCatalogItemError = RemoveCategoriesFromCatalogItemErrors[keyof RemoveCategoriesFromCatalogItemErrors];
type RemoveCategoriesFromCatalogItemResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveCategoriesFromCatalogItemResponse = RemoveCategoriesFromCatalogItemResponses[keyof RemoveCategoriesFromCatalogItemResponses];
type GetCategoryIdsForCatalogItemData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/catalog-items/{id}/relationships/categories';
};
type GetCategoryIdsForCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCategoryIdsForCatalogItemError = GetCategoryIdsForCatalogItemErrors[keyof GetCategoryIdsForCatalogItemErrors];
type GetCategoryIdsForCatalogItemResponses = {
    /**
     * Success
     */
    200: GetCatalogItemCategoriesRelationshipsResponseCollection;
};
type GetCategoryIdsForCatalogItemResponse = GetCategoryIdsForCatalogItemResponses[keyof GetCategoryIdsForCatalogItemResponses];
type UpdateCategoriesForCatalogItemData = {
    body: CatalogItemCategoryOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-items/{id}/relationships/categories';
};
type UpdateCategoriesForCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCategoriesForCatalogItemError = UpdateCategoriesForCatalogItemErrors[keyof UpdateCategoriesForCatalogItemErrors];
type UpdateCategoriesForCatalogItemResponses = {
    /**
     * Success
     */
    204: void;
};
type UpdateCategoriesForCatalogItemResponse = UpdateCategoriesForCatalogItemResponses[keyof UpdateCategoriesForCatalogItemResponses];
type AddCategoriesToCatalogItemData = {
    body: CatalogItemCategoryOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.
         */
        id: string;
    };
    query?: never;
    url: '/api/catalog-items/{id}/relationships/categories';
};
type AddCategoriesToCatalogItemErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type AddCategoriesToCatalogItemError = AddCategoriesToCatalogItemErrors[keyof AddCategoriesToCatalogItemErrors];
type AddCategoriesToCatalogItemResponses = {
    /**
     * Success
     */
    204: void;
};
type AddCategoriesToCatalogItemResponse = AddCategoriesToCatalogItemResponses[keyof AddCategoriesToCatalogItemResponses];
type GetCouponsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon]'?: Array<'external_id' | 'description' | 'monitor_configuration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/coupons';
};
type GetCouponsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponsError = GetCouponsErrors[keyof GetCouponsErrors];
type GetCouponsResponses = {
    /**
     * Success
     */
    200: GetCouponResponseCollection;
};
type GetCouponsResponse = GetCouponsResponses[keyof GetCouponsResponses];
type CreateCouponData = {
    body: CouponCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/coupons';
};
type CreateCouponErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCouponError = CreateCouponErrors[keyof CreateCouponErrors];
type CreateCouponResponses = {
    /**
     * Success
     */
    201: PostCouponResponse;
};
type CreateCouponResponse = CreateCouponResponses[keyof CreateCouponResponses];
type DeleteCouponData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The internal id of a Coupon is equivalent to its external id stored within an integration.
         */
        id: string;
    };
    query?: never;
    url: '/api/coupons/{id}';
};
type DeleteCouponErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCouponError = DeleteCouponErrors[keyof DeleteCouponErrors];
type DeleteCouponResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCouponResponse = DeleteCouponResponses[keyof DeleteCouponResponses];
type GetCouponData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The internal id of a Coupon is equivalent to its external id stored within an integration.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon]'?: Array<'external_id' | 'description' | 'monitor_configuration'>;
    };
    url: '/api/coupons/{id}';
};
type GetCouponErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponError = GetCouponErrors[keyof GetCouponErrors];
type GetCouponResponses = {
    /**
     * Success
     */
    200: GetCouponResponse;
};
type GetCouponResponse2 = GetCouponResponses[keyof GetCouponResponses];
type UpdateCouponData = {
    body: CouponUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The internal id of a Coupon is equivalent to its external id stored within an integration.
         */
        id: string;
    };
    query?: never;
    url: '/api/coupons/{id}';
};
type UpdateCouponErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCouponError = UpdateCouponErrors[keyof UpdateCouponErrors];
type UpdateCouponResponses = {
    /**
     * Success
     */
    200: PatchCouponResponse;
};
type UpdateCouponResponse = UpdateCouponResponses[keyof UpdateCouponResponses];
type GetCouponCodesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon-code]'?: Array<'unique_code' | 'expires_at' | 'status'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon]'?: Array<'external_id' | 'description' | 'monitor_configuration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`<br>`coupon.id`: `any`, `equals`<br>`profile.id`: `any`, `equals`
         */
        filter: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'coupon'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/coupon-codes';
};
type GetCouponCodesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponCodesError = GetCouponCodesErrors[keyof GetCouponCodesErrors];
type GetCouponCodesResponses = {
    /**
     * Success
     */
    200: GetCouponCodeResponseCollectionCompoundDocument;
};
type GetCouponCodesResponse = GetCouponCodesResponses[keyof GetCouponCodesResponses];
type CreateCouponCodeData = {
    body: CouponCodeCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/coupon-codes';
};
type CreateCouponCodeErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCouponCodeError = CreateCouponCodeErrors[keyof CreateCouponCodeErrors];
type CreateCouponCodeResponses = {
    /**
     * Success
     */
    200: PostCouponCodeResponse;
};
type CreateCouponCodeResponse = CreateCouponCodeResponses[keyof CreateCouponCodeResponses];
type DeleteCouponCodeData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
         */
        id: string;
    };
    query?: never;
    url: '/api/coupon-codes/{id}';
};
type DeleteCouponCodeErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCouponCodeError = DeleteCouponCodeErrors[keyof DeleteCouponCodeErrors];
type DeleteCouponCodeResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCouponCodeResponse = DeleteCouponCodeResponses[keyof DeleteCouponCodeResponses];
type GetCouponCodeData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon-code]'?: Array<'unique_code' | 'expires_at' | 'status'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon]'?: Array<'external_id' | 'description' | 'monitor_configuration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'coupon'>;
    };
    url: '/api/coupon-codes/{id}';
};
type GetCouponCodeErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponCodeError = GetCouponCodeErrors[keyof GetCouponCodeErrors];
type GetCouponCodeResponses = {
    /**
     * Success
     */
    200: GetCouponCodeResponseCompoundDocument;
};
type GetCouponCodeResponse = GetCouponCodeResponses[keyof GetCouponCodeResponses];
type UpdateCouponCodeData = {
    body: CouponCodeUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.
         */
        id: string;
    };
    query?: never;
    url: '/api/coupon-codes/{id}';
};
type UpdateCouponCodeErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCouponCodeError = UpdateCouponCodeErrors[keyof UpdateCouponCodeErrors];
type UpdateCouponCodeResponses = {
    /**
     * Success
     */
    200: PatchCouponCodeResponse;
};
type UpdateCouponCodeResponse = UpdateCouponCodeResponses[keyof UpdateCouponCodeResponses];
type GetBulkCreateCouponCodeJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon-code-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/coupon-code-bulk-create-jobs';
};
type GetBulkCreateCouponCodeJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateCouponCodeJobsError = GetBulkCreateCouponCodeJobsErrors[keyof GetBulkCreateCouponCodeJobsErrors];
type GetBulkCreateCouponCodeJobsResponses = {
    /**
     * Success
     */
    200: GetCouponCodeCreateJobResponseCollectionCompoundDocument;
};
type GetBulkCreateCouponCodeJobsResponse = GetBulkCreateCouponCodeJobsResponses[keyof GetBulkCreateCouponCodeJobsResponses];
type BulkCreateCouponCodesData = {
    body: CouponCodeCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/coupon-code-bulk-create-jobs';
};
type BulkCreateCouponCodesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateCouponCodesError = BulkCreateCouponCodesErrors[keyof BulkCreateCouponCodesErrors];
type BulkCreateCouponCodesResponses = {
    /**
     * Success
     */
    202: PostCouponCodeCreateJobResponse;
};
type BulkCreateCouponCodesResponse = BulkCreateCouponCodesResponses[keyof BulkCreateCouponCodesResponses];
type GetBulkCreateCouponCodesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon-code-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'errors' | 'expires_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon-code]'?: Array<'unique_code' | 'expires_at' | 'status'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'coupon-codes'>;
    };
    url: '/api/coupon-code-bulk-create-jobs/{job_id}';
};
type GetBulkCreateCouponCodesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkCreateCouponCodesJobError = GetBulkCreateCouponCodesJobErrors[keyof GetBulkCreateCouponCodesJobErrors];
type GetBulkCreateCouponCodesJobResponses = {
    /**
     * Success
     */
    200: GetCouponCodeCreateJobResponseCompoundDocument;
};
type GetBulkCreateCouponCodesJobResponse = GetBulkCreateCouponCodesJobResponses[keyof GetBulkCreateCouponCodesJobResponses];
type GetCouponForCouponCodeData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the coupon to look up the relationship of.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon]'?: Array<'external_id' | 'description' | 'monitor_configuration'>;
    };
    url: '/api/coupon-codes/{id}/coupon';
};
type GetCouponForCouponCodeErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponForCouponCodeError = GetCouponForCouponCodeErrors[keyof GetCouponForCouponCodeErrors];
type GetCouponForCouponCodeResponses = {
    /**
     * Success
     */
    200: GetCouponResponse;
};
type GetCouponForCouponCodeResponse = GetCouponForCouponCodeResponses[keyof GetCouponForCouponCodeResponses];
type GetCouponIdForCouponCodeData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the coupon to look up the relationship of.
         */
        id: string;
    };
    query?: never;
    url: '/api/coupon-codes/{id}/relationships/coupon';
};
type GetCouponIdForCouponCodeErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponIdForCouponCodeError = GetCouponIdForCouponCodeErrors[keyof GetCouponIdForCouponCodeErrors];
type GetCouponIdForCouponCodeResponses = {
    /**
     * Success
     */
    200: GetCouponCodeCouponRelationshipResponse;
};
type GetCouponIdForCouponCodeResponse = GetCouponIdForCouponCodeResponses[keyof GetCouponIdForCouponCodeResponses];
type GetCouponCodesForCouponData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the coupon to look up the relationship of.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[coupon-code]'?: Array<'unique_code' | 'expires_at' | 'status'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`<br>`coupon.id`: `any`, `equals`<br>`profile.id`: `any`, `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/coupons/{id}/coupon-codes';
};
type GetCouponCodesForCouponErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponCodesForCouponError = GetCouponCodesForCouponErrors[keyof GetCouponCodesForCouponErrors];
type GetCouponCodesForCouponResponses = {
    /**
     * Success
     */
    200: GetCouponCodeResponseCollection;
};
type GetCouponCodesForCouponResponse = GetCouponCodesForCouponResponses[keyof GetCouponCodesForCouponResponses];
type GetCouponCodeIdsForCouponData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the coupon to look up the relationship of.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`<br>`coupon.id`: `any`, `equals`<br>`profile.id`: `any`, `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/coupons/{id}/relationships/coupon-codes';
};
type GetCouponCodeIdsForCouponErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCouponCodeIdsForCouponError = GetCouponCodeIdsForCouponErrors[keyof GetCouponCodeIdsForCouponErrors];
type GetCouponCodeIdsForCouponResponses = {
    /**
     * Success
     */
    200: GetCouponCodesRelationshipsResponseCollection;
};
type GetCouponCodeIdsForCouponResponse = GetCouponCodeIdsForCouponResponses[keyof GetCouponCodeIdsForCouponResponses];
type GetDataSourcesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[data-source]'?: Array<'title' | 'visibility' | 'description' | 'namespace'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
    };
    url: '/api/data-sources';
};
type GetDataSourcesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetDataSourcesError = GetDataSourcesErrors[keyof GetDataSourcesErrors];
type GetDataSourcesResponses = {
    /**
     * Success
     */
    200: GetDataSourceResponseCollection;
};
type GetDataSourcesResponse = GetDataSourcesResponses[keyof GetDataSourcesResponses];
type CreateDataSourceData = {
    /**
     * Create data source
     */
    body: DataSourceCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/data-sources';
};
type CreateDataSourceErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateDataSourceError = CreateDataSourceErrors[keyof CreateDataSourceErrors];
type CreateDataSourceResponses = {
    /**
     * Success
     */
    201: PostDataSourceResponse;
};
type CreateDataSourceResponse = CreateDataSourceResponses[keyof CreateDataSourceResponses];
type DeleteDataSourceData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the data source to delete
         */
        id: string;
    };
    query?: never;
    url: '/api/data-sources/{id}';
};
type DeleteDataSourceErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteDataSourceError = DeleteDataSourceErrors[keyof DeleteDataSourceErrors];
type DeleteDataSourceResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteDataSourceResponse = DeleteDataSourceResponses[keyof DeleteDataSourceResponses];
type GetDataSourceData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the data source
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[data-source]'?: Array<'title' | 'visibility' | 'description' | 'namespace'>;
    };
    url: '/api/data-sources/{id}';
};
type GetDataSourceErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetDataSourceError = GetDataSourceErrors[keyof GetDataSourceErrors];
type GetDataSourceResponses = {
    /**
     * Success
     */
    200: GetDataSourceResponse;
};
type GetDataSourceResponse2 = GetDataSourceResponses[keyof GetDataSourceResponses];
type BulkCreateDataSourceRecordsData = {
    /**
     * Create a data source record job
     */
    body: DataSourceRecordBulkCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/data-source-record-bulk-create-jobs';
};
type BulkCreateDataSourceRecordsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateDataSourceRecordsError = BulkCreateDataSourceRecordsErrors[keyof BulkCreateDataSourceRecordsErrors];
type BulkCreateDataSourceRecordsResponses = {
    /**
     * Success
     */
    204: void;
};
type BulkCreateDataSourceRecordsResponse = BulkCreateDataSourceRecordsResponses[keyof BulkCreateDataSourceRecordsResponses];
type CreateDataSourceRecordData = {
    /**
     * Create a data source record job
     */
    body: DataSourceRecordCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/data-source-record-create-jobs';
};
type CreateDataSourceRecordErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateDataSourceRecordError = CreateDataSourceRecordErrors[keyof CreateDataSourceRecordErrors];
type CreateDataSourceRecordResponses = {
    /**
     * Success
     */
    204: void;
};
type CreateDataSourceRecordResponse = CreateDataSourceRecordResponses[keyof CreateDataSourceRecordResponses];
type RequestProfileDeletionData = {
    body: DataPrivacyCreateDeletionJobQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/data-privacy-deletion-jobs';
};
type RequestProfileDeletionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RequestProfileDeletionError = RequestProfileDeletionErrors[keyof RequestProfileDeletionErrors];
type RequestProfileDeletionResponses = {
    /**
     * Success
     */
    202: unknown;
};
type GetEventsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[event]'?: Array<'timestamp' | 'event_properties' | 'datetime' | 'uuid'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`metric_id`: `equals`<br>`profile_id`: `equals`<br>`profile`: `has`<br>`datetime`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`timestamp`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'attributions' | 'metric' | 'profile'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'datetime' | '-datetime' | 'timestamp' | '-timestamp';
    };
    url: '/api/events';
};
type GetEventsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetEventsError = GetEventsErrors[keyof GetEventsErrors];
type GetEventsResponses = {
    /**
     * Success
     */
    200: GetEventResponseCollectionCompoundDocument;
};
type GetEventsResponse = GetEventsResponses[keyof GetEventsResponses];
type CreateEventData = {
    body: EventCreateQueryV2;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/events';
};
type CreateEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateEventError = CreateEventErrors[keyof CreateEventErrors];
type CreateEventResponses = {
    /**
     * Success
     */
    202: unknown;
};
type GetEventData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the event
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[event]'?: Array<'timestamp' | 'event_properties' | 'datetime' | 'uuid'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'attributions' | 'metric' | 'profile'>;
    };
    url: '/api/events/{id}';
};
type GetEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetEventError = GetEventErrors[keyof GetEventErrors];
type GetEventResponses = {
    /**
     * Success
     */
    200: GetEventResponseCompoundDocument;
};
type GetEventResponse = GetEventResponses[keyof GetEventResponses];
type BulkCreateEventsData = {
    body: EventsBulkCreateJob;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/event-bulk-create-jobs';
};
type BulkCreateEventsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateEventsError = BulkCreateEventsErrors[keyof BulkCreateEventsErrors];
type BulkCreateEventsResponses = {
    /**
     * Success
     */
    202: unknown;
};
type GetMetricForEventData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the event
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
    };
    url: '/api/events/{id}/metric';
};
type GetMetricForEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricForEventError = GetMetricForEventErrors[keyof GetMetricForEventErrors];
type GetMetricForEventResponses = {
    /**
     * Success
     */
    200: GetMetricResponse;
};
type GetMetricForEventResponse = GetMetricForEventResponses[keyof GetMetricForEventResponses];
type GetMetricIdForEventData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the event
         */
        id: string;
    };
    query?: never;
    url: '/api/events/{id}/relationships/metric';
};
type GetMetricIdForEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricIdForEventError = GetMetricIdForEventErrors[keyof GetMetricIdForEventErrors];
type GetMetricIdForEventResponses = {
    /**
     * Success
     */
    200: GetEventMetricRelationshipResponse;
};
type GetMetricIdForEventResponse = GetMetricIdForEventResponses[keyof GetMetricIdForEventResponses];
type GetProfileForEventData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the event
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
    };
    url: '/api/events/{id}/profile';
};
type GetProfileForEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileForEventError = GetProfileForEventErrors[keyof GetProfileForEventErrors];
type GetProfileForEventResponses = {
    /**
     * Success
     */
    200: GetProfileResponse;
};
type GetProfileForEventResponse = GetProfileForEventResponses[keyof GetProfileForEventResponses];
type GetProfileIdForEventData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the event
         */
        id: string;
    };
    query?: never;
    url: '/api/events/{id}/relationships/profile';
};
type GetProfileIdForEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileIdForEventError = GetProfileIdForEventErrors[keyof GetProfileIdForEventErrors];
type GetProfileIdForEventResponses = {
    /**
     * Success
     */
    200: GetEventProfileRelationshipResponse;
};
type GetProfileIdForEventResponse = GetProfileIdForEventResponses[keyof GetProfileIdForEventResponses];
type GetFlowsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-action]'?: Array<'created' | 'updated' | 'definition' | 'definition.id' | 'definition.temporary_id' | 'definition.type' | 'definition.links' | 'definition.links.next_if_true' | 'definition.links.next_if_false' | 'definition.data' | 'definition.data.action_output_filter' | 'definition.data.action_output_filter.condition_groups' | 'definition.links.next' | 'definition.data.profile_filter' | 'definition.data.profile_filter.condition_groups' | 'definition.data.status' | 'definition.data.experiment_status' | 'definition.data.main_action' | 'definition.data.main_action.id' | 'definition.data.main_action.temporary_id' | 'definition.data.main_action.type' | 'definition.data.main_action.links' | 'definition.data.main_action.links.next' | 'definition.data.main_action.data' | 'definition.data.main_action.data.message' | 'definition.data.main_action.data.message.title' | 'definition.data.main_action.data.message.body' | 'definition.data.main_action.data.message.sound' | 'definition.data.main_action.data.message.badge' | 'definition.data.main_action.data.message.badge_options' | 'definition.data.main_action.data.message.badge_options.badge_config' | 'definition.data.main_action.data.message.badge_options.value' | 'definition.data.main_action.data.message.badge_options.set_from_property' | 'definition.data.main_action.data.message.image_id' | 'definition.data.main_action.data.message.dynamic_image' | 'definition.data.main_action.data.message.video_asset_id' | 'definition.data.main_action.data.message.on_open' | 'definition.data.main_action.data.message.ios_link' | 'definition.data.main_action.data.message.android_link' | 'definition.data.main_action.data.message.push_type' | 'definition.data.main_action.data.message.kv_pairs' | 'definition.data.main_action.data.message.conversion_metric_id' | 'definition.data.main_action.data.message.smart_sending_enabled' | 'definition.data.main_action.data.message.additional_filters' | 'definition.data.main_action.data.message.additional_filters.condition_groups' | 'definition.data.main_action.data.message.name' | 'definition.data.main_action.data.message.id' | 'definition.data.main_action.data.status' | 'definition.data.current_experiment' | 'definition.data.current_experiment.id' | 'definition.data.current_experiment.name' | 'definition.data.current_experiment.variations' | 'definition.data.current_experiment.allocations' | 'definition.data.current_experiment.started' | 'definition.data.current_experiment.winner_metric' | 'definition.data.message' | 'definition.data.message.from_email' | 'definition.data.message.from_label' | 'definition.data.message.reply_to_email' | 'definition.data.message.cc_email' | 'definition.data.message.bcc_email' | 'definition.data.message.subject_line' | 'definition.data.message.preview_text' | 'definition.data.message.template_id' | 'definition.data.message.smart_sending_enabled' | 'definition.data.message.transactional' | 'definition.data.message.add_tracking_params' | 'definition.data.message.custom_tracking_params' | 'definition.data.message.additional_filters' | 'definition.data.message.additional_filters.condition_groups' | 'definition.data.message.name' | 'definition.data.message.id' | 'definition.data.message.title' | 'definition.data.message.body' | 'definition.data.message.sound' | 'definition.data.message.badge' | 'definition.data.message.badge_options' | 'definition.data.message.badge_options.badge_config' | 'definition.data.message.badge_options.value' | 'definition.data.message.badge_options.set_from_property' | 'definition.data.message.image_id' | 'definition.data.message.dynamic_image' | 'definition.data.message.video_asset_id' | 'definition.data.message.on_open' | 'definition.data.message.ios_link' | 'definition.data.message.android_link' | 'definition.data.message.push_type' | 'definition.data.message.kv_pairs' | 'definition.data.message.conversion_metric_id' | 'definition.data.message.shorten_links' | 'definition.data.message.include_contact_card' | 'definition.data.message.add_org_prefix' | 'definition.data.message.add_info_link' | 'definition.data.message.add_opt_out_language' | 'definition.data.message.sms_quiet_hours_enabled' | 'definition.data.message.url' | 'definition.data.message.headers' | 'definition.data.message.to_emails' | 'definition.data.message.vendor_id' | 'definition.data.unit' | 'definition.data.value' | 'definition.data.secondary_value' | 'definition.data.timezone' | 'definition.data.delay_until_time' | 'definition.data.delay_until_weekdays' | 'definition.data.trigger_filter' | 'definition.data.trigger_filter.condition_groups' | 'definition.data.trigger_id' | 'definition.data.trigger_type' | 'definition.data.trigger_subtype' | 'definition.data.profile_operations' | 'definition.data.target_time' | 'definition.data.target_days' | 'definition.data.main_action.data.message.from_email' | 'definition.data.main_action.data.message.from_label' | 'definition.data.main_action.data.message.reply_to_email' | 'definition.data.main_action.data.message.cc_email' | 'definition.data.main_action.data.message.bcc_email' | 'definition.data.main_action.data.message.subject_line' | 'definition.data.main_action.data.message.preview_text' | 'definition.data.main_action.data.message.template_id' | 'definition.data.main_action.data.message.transactional' | 'definition.data.main_action.data.message.add_tracking_params' | 'definition.data.main_action.data.message.custom_tracking_params' | 'definition.data.main_action.data.message.shorten_links' | 'definition.data.main_action.data.message.include_contact_card' | 'definition.data.main_action.data.message.add_org_prefix' | 'definition.data.main_action.data.message.add_info_link' | 'definition.data.main_action.data.message.add_opt_out_language' | 'definition.data.main_action.data.message.sms_quiet_hours_enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings' | 'definition.data.current_experiment.automatic_winner_selection_settings.enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_date' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_statistical_certainty' | 'definition.data.service_configuration' | 'definition.data.service_configuration.service_method_type' | 'definition.data.service_configuration.report_id' | 'definition.data.service_configuration.event_key' | 'definition.data.service_configuration.event_payload' | 'definition.data.service_configuration.tracking_company_id' | 'definition.data.branches' | 'definition.data.name' | 'definition.data.on_execution' | 'definition.data.list_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`<br>`status`: `equals`<br>`archived`: `equals`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`trigger_type`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-actions' | 'tags'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 50. Min: 1. Max: 50.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'status' | '-status' | 'trigger_type' | '-trigger_type' | 'updated' | '-updated';
    };
    url: '/api/flows';
};
type GetFlowsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowsError = GetFlowsErrors[keyof GetFlowsErrors];
type GetFlowsResponses = {
    /**
     * Success
     */
    200: GetFlowResponseCollectionCompoundDocument;
};
type GetFlowsResponse = GetFlowsResponses[keyof GetFlowsResponses];
type CreateFlowData = {
    /**
     * Creates a Flow from parameters
     */
    body: FlowCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'definition'
         */
        'additional-fields[flow]'?: Array<'definition'>;
    };
    url: '/api/flows';
};
type CreateFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateFlowError = CreateFlowErrors[keyof CreateFlowErrors];
type CreateFlowResponses = {
    /**
     * Success
     */
    201: PostFlowV2Response;
};
type CreateFlowResponse = CreateFlowResponses[keyof CreateFlowResponses];
type DeleteFlowData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the Flow to delete. Ex: XVTP5Q
         */
        id: string;
    };
    query?: never;
    url: '/api/flows/{id}';
};
type DeleteFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteFlowError = DeleteFlowErrors[keyof DeleteFlowErrors];
type DeleteFlowResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteFlowResponse = DeleteFlowResponses[keyof DeleteFlowResponses];
type GetFlowData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'definition'
         */
        'additional-fields[flow]'?: Array<'definition'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-action]'?: Array<'created' | 'updated' | 'definition' | 'definition.id' | 'definition.temporary_id' | 'definition.type' | 'definition.links' | 'definition.links.next_if_true' | 'definition.links.next_if_false' | 'definition.data' | 'definition.data.action_output_filter' | 'definition.data.action_output_filter.condition_groups' | 'definition.links.next' | 'definition.data.profile_filter' | 'definition.data.profile_filter.condition_groups' | 'definition.data.status' | 'definition.data.experiment_status' | 'definition.data.main_action' | 'definition.data.main_action.id' | 'definition.data.main_action.temporary_id' | 'definition.data.main_action.type' | 'definition.data.main_action.links' | 'definition.data.main_action.links.next' | 'definition.data.main_action.data' | 'definition.data.main_action.data.message' | 'definition.data.main_action.data.message.title' | 'definition.data.main_action.data.message.body' | 'definition.data.main_action.data.message.sound' | 'definition.data.main_action.data.message.badge' | 'definition.data.main_action.data.message.badge_options' | 'definition.data.main_action.data.message.badge_options.badge_config' | 'definition.data.main_action.data.message.badge_options.value' | 'definition.data.main_action.data.message.badge_options.set_from_property' | 'definition.data.main_action.data.message.image_id' | 'definition.data.main_action.data.message.dynamic_image' | 'definition.data.main_action.data.message.video_asset_id' | 'definition.data.main_action.data.message.on_open' | 'definition.data.main_action.data.message.ios_link' | 'definition.data.main_action.data.message.android_link' | 'definition.data.main_action.data.message.push_type' | 'definition.data.main_action.data.message.kv_pairs' | 'definition.data.main_action.data.message.conversion_metric_id' | 'definition.data.main_action.data.message.smart_sending_enabled' | 'definition.data.main_action.data.message.additional_filters' | 'definition.data.main_action.data.message.additional_filters.condition_groups' | 'definition.data.main_action.data.message.name' | 'definition.data.main_action.data.message.id' | 'definition.data.main_action.data.status' | 'definition.data.current_experiment' | 'definition.data.current_experiment.id' | 'definition.data.current_experiment.name' | 'definition.data.current_experiment.variations' | 'definition.data.current_experiment.allocations' | 'definition.data.current_experiment.started' | 'definition.data.current_experiment.winner_metric' | 'definition.data.message' | 'definition.data.message.from_email' | 'definition.data.message.from_label' | 'definition.data.message.reply_to_email' | 'definition.data.message.cc_email' | 'definition.data.message.bcc_email' | 'definition.data.message.subject_line' | 'definition.data.message.preview_text' | 'definition.data.message.template_id' | 'definition.data.message.smart_sending_enabled' | 'definition.data.message.transactional' | 'definition.data.message.add_tracking_params' | 'definition.data.message.custom_tracking_params' | 'definition.data.message.additional_filters' | 'definition.data.message.additional_filters.condition_groups' | 'definition.data.message.name' | 'definition.data.message.id' | 'definition.data.message.title' | 'definition.data.message.body' | 'definition.data.message.sound' | 'definition.data.message.badge' | 'definition.data.message.badge_options' | 'definition.data.message.badge_options.badge_config' | 'definition.data.message.badge_options.value' | 'definition.data.message.badge_options.set_from_property' | 'definition.data.message.image_id' | 'definition.data.message.dynamic_image' | 'definition.data.message.video_asset_id' | 'definition.data.message.on_open' | 'definition.data.message.ios_link' | 'definition.data.message.android_link' | 'definition.data.message.push_type' | 'definition.data.message.kv_pairs' | 'definition.data.message.conversion_metric_id' | 'definition.data.message.shorten_links' | 'definition.data.message.include_contact_card' | 'definition.data.message.add_org_prefix' | 'definition.data.message.add_info_link' | 'definition.data.message.add_opt_out_language' | 'definition.data.message.sms_quiet_hours_enabled' | 'definition.data.message.url' | 'definition.data.message.headers' | 'definition.data.message.to_emails' | 'definition.data.message.vendor_id' | 'definition.data.unit' | 'definition.data.value' | 'definition.data.secondary_value' | 'definition.data.timezone' | 'definition.data.delay_until_time' | 'definition.data.delay_until_weekdays' | 'definition.data.trigger_filter' | 'definition.data.trigger_filter.condition_groups' | 'definition.data.trigger_id' | 'definition.data.trigger_type' | 'definition.data.trigger_subtype' | 'definition.data.profile_operations' | 'definition.data.target_time' | 'definition.data.target_days' | 'definition.data.main_action.data.message.from_email' | 'definition.data.main_action.data.message.from_label' | 'definition.data.main_action.data.message.reply_to_email' | 'definition.data.main_action.data.message.cc_email' | 'definition.data.main_action.data.message.bcc_email' | 'definition.data.main_action.data.message.subject_line' | 'definition.data.main_action.data.message.preview_text' | 'definition.data.main_action.data.message.template_id' | 'definition.data.main_action.data.message.transactional' | 'definition.data.main_action.data.message.add_tracking_params' | 'definition.data.main_action.data.message.custom_tracking_params' | 'definition.data.main_action.data.message.shorten_links' | 'definition.data.main_action.data.message.include_contact_card' | 'definition.data.main_action.data.message.add_org_prefix' | 'definition.data.main_action.data.message.add_info_link' | 'definition.data.main_action.data.message.add_opt_out_language' | 'definition.data.main_action.data.message.sms_quiet_hours_enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings' | 'definition.data.current_experiment.automatic_winner_selection_settings.enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_date' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_statistical_certainty' | 'definition.data.service_configuration' | 'definition.data.service_configuration.service_method_type' | 'definition.data.service_configuration.report_id' | 'definition.data.service_configuration.event_key' | 'definition.data.service_configuration.event_payload' | 'definition.data.service_configuration.tracking_company_id' | 'definition.data.branches' | 'definition.data.name' | 'definition.data.on_execution' | 'definition.data.list_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type' | 'definition' | 'definition.triggers' | 'definition.profile_filter' | 'definition.profile_filter.condition_groups' | 'definition.actions' | 'definition.entry_action_id' | 'definition.reentry_criteria' | 'definition.reentry_criteria.duration' | 'definition.reentry_criteria.unit'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-actions' | 'tags'>;
    };
    url: '/api/flows/{id}';
};
type GetFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowError = GetFlowErrors[keyof GetFlowErrors];
type GetFlowResponses = {
    /**
     * Success
     */
    200: GetFlowV2ResponseCompoundDocument;
};
type GetFlowResponse2 = GetFlowResponses[keyof GetFlowResponses];
type UpdateFlowData = {
    body: FlowUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the Flow to update. Ex: XVTP5Q
         */
        id: string;
    };
    query?: never;
    url: '/api/flows/{id}';
};
type UpdateFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateFlowError = UpdateFlowErrors[keyof UpdateFlowErrors];
type UpdateFlowResponses = {
    /**
     * Success
     */
    200: PatchFlowResponse;
};
type UpdateFlowResponse = UpdateFlowResponses[keyof UpdateFlowResponses];
type GetFlowActionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-action]'?: Array<'created' | 'updated' | 'definition' | 'definition.id' | 'definition.temporary_id' | 'definition.type' | 'definition.links' | 'definition.links.next_if_true' | 'definition.links.next_if_false' | 'definition.data' | 'definition.data.action_output_filter' | 'definition.data.action_output_filter.condition_groups' | 'definition.links.next' | 'definition.data.profile_filter' | 'definition.data.profile_filter.condition_groups' | 'definition.data.status' | 'definition.data.experiment_status' | 'definition.data.main_action' | 'definition.data.main_action.id' | 'definition.data.main_action.temporary_id' | 'definition.data.main_action.type' | 'definition.data.main_action.links' | 'definition.data.main_action.links.next' | 'definition.data.main_action.data' | 'definition.data.main_action.data.message' | 'definition.data.main_action.data.message.title' | 'definition.data.main_action.data.message.body' | 'definition.data.main_action.data.message.sound' | 'definition.data.main_action.data.message.badge' | 'definition.data.main_action.data.message.badge_options' | 'definition.data.main_action.data.message.badge_options.badge_config' | 'definition.data.main_action.data.message.badge_options.value' | 'definition.data.main_action.data.message.badge_options.set_from_property' | 'definition.data.main_action.data.message.image_id' | 'definition.data.main_action.data.message.dynamic_image' | 'definition.data.main_action.data.message.video_asset_id' | 'definition.data.main_action.data.message.on_open' | 'definition.data.main_action.data.message.ios_link' | 'definition.data.main_action.data.message.android_link' | 'definition.data.main_action.data.message.push_type' | 'definition.data.main_action.data.message.kv_pairs' | 'definition.data.main_action.data.message.conversion_metric_id' | 'definition.data.main_action.data.message.smart_sending_enabled' | 'definition.data.main_action.data.message.additional_filters' | 'definition.data.main_action.data.message.additional_filters.condition_groups' | 'definition.data.main_action.data.message.name' | 'definition.data.main_action.data.message.id' | 'definition.data.main_action.data.status' | 'definition.data.current_experiment' | 'definition.data.current_experiment.id' | 'definition.data.current_experiment.name' | 'definition.data.current_experiment.variations' | 'definition.data.current_experiment.allocations' | 'definition.data.current_experiment.started' | 'definition.data.current_experiment.winner_metric' | 'definition.data.message' | 'definition.data.message.from_email' | 'definition.data.message.from_label' | 'definition.data.message.reply_to_email' | 'definition.data.message.cc_email' | 'definition.data.message.bcc_email' | 'definition.data.message.subject_line' | 'definition.data.message.preview_text' | 'definition.data.message.template_id' | 'definition.data.message.smart_sending_enabled' | 'definition.data.message.transactional' | 'definition.data.message.add_tracking_params' | 'definition.data.message.custom_tracking_params' | 'definition.data.message.additional_filters' | 'definition.data.message.additional_filters.condition_groups' | 'definition.data.message.name' | 'definition.data.message.id' | 'definition.data.message.title' | 'definition.data.message.body' | 'definition.data.message.sound' | 'definition.data.message.badge' | 'definition.data.message.badge_options' | 'definition.data.message.badge_options.badge_config' | 'definition.data.message.badge_options.value' | 'definition.data.message.badge_options.set_from_property' | 'definition.data.message.image_id' | 'definition.data.message.dynamic_image' | 'definition.data.message.video_asset_id' | 'definition.data.message.on_open' | 'definition.data.message.ios_link' | 'definition.data.message.android_link' | 'definition.data.message.push_type' | 'definition.data.message.kv_pairs' | 'definition.data.message.conversion_metric_id' | 'definition.data.message.shorten_links' | 'definition.data.message.include_contact_card' | 'definition.data.message.add_org_prefix' | 'definition.data.message.add_info_link' | 'definition.data.message.add_opt_out_language' | 'definition.data.message.sms_quiet_hours_enabled' | 'definition.data.message.url' | 'definition.data.message.headers' | 'definition.data.message.to_emails' | 'definition.data.message.vendor_id' | 'definition.data.unit' | 'definition.data.value' | 'definition.data.secondary_value' | 'definition.data.timezone' | 'definition.data.delay_until_time' | 'definition.data.delay_until_weekdays' | 'definition.data.trigger_filter' | 'definition.data.trigger_filter.condition_groups' | 'definition.data.trigger_id' | 'definition.data.trigger_type' | 'definition.data.trigger_subtype' | 'definition.data.profile_operations' | 'definition.data.target_time' | 'definition.data.target_days' | 'definition.data.main_action.data.message.from_email' | 'definition.data.main_action.data.message.from_label' | 'definition.data.main_action.data.message.reply_to_email' | 'definition.data.main_action.data.message.cc_email' | 'definition.data.main_action.data.message.bcc_email' | 'definition.data.main_action.data.message.subject_line' | 'definition.data.main_action.data.message.preview_text' | 'definition.data.main_action.data.message.template_id' | 'definition.data.main_action.data.message.transactional' | 'definition.data.main_action.data.message.add_tracking_params' | 'definition.data.main_action.data.message.custom_tracking_params' | 'definition.data.main_action.data.message.shorten_links' | 'definition.data.main_action.data.message.include_contact_card' | 'definition.data.main_action.data.message.add_org_prefix' | 'definition.data.main_action.data.message.add_info_link' | 'definition.data.main_action.data.message.add_opt_out_language' | 'definition.data.main_action.data.message.sms_quiet_hours_enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings' | 'definition.data.current_experiment.automatic_winner_selection_settings.enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_date' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_statistical_certainty' | 'definition.data.service_configuration' | 'definition.data.service_configuration.service_method_type' | 'definition.data.service_configuration.report_id' | 'definition.data.service_configuration.event_key' | 'definition.data.service_configuration.event_payload' | 'definition.data.service_configuration.tracking_company_id' | 'definition.data.branches' | 'definition.data.name' | 'definition.data.on_execution' | 'definition.data.list_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-message]'?: Array<'channel' | 'created' | 'updated' | 'definition' | 'definition.from_email' | 'definition.from_label' | 'definition.reply_to_email' | 'definition.cc_email' | 'definition.bcc_email' | 'definition.subject_line' | 'definition.preview_text' | 'definition.template_id' | 'definition.smart_sending_enabled' | 'definition.transactional' | 'definition.add_tracking_params' | 'definition.custom_tracking_params' | 'definition.additional_filters' | 'definition.additional_filters.condition_groups' | 'definition.name' | 'definition.id' | 'definition.to_emails' | 'definition.title' | 'definition.body' | 'definition.sound' | 'definition.badge' | 'definition.badge_options' | 'definition.badge_options.badge_config' | 'definition.badge_options.value' | 'definition.badge_options.set_from_property' | 'definition.image_id' | 'definition.dynamic_image' | 'definition.video_asset_id' | 'definition.on_open' | 'definition.ios_link' | 'definition.android_link' | 'definition.push_type' | 'definition.kv_pairs' | 'definition.conversion_metric_id' | 'definition.shorten_links' | 'definition.include_contact_card' | 'definition.add_org_prefix' | 'definition.add_info_link' | 'definition.add_opt_out_language' | 'definition.sms_quiet_hours_enabled' | 'definition.url' | 'definition.headers' | 'definition.vendor_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow' | 'flow-messages'>;
    };
    url: '/api/flow-actions/{id}';
};
type GetFlowActionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowActionError = GetFlowActionErrors[keyof GetFlowActionErrors];
type GetFlowActionResponses = {
    /**
     * Success
     */
    200: GetFlowActionEncodedResponseCompoundDocument;
};
type GetFlowActionResponse = GetFlowActionResponses[keyof GetFlowActionResponses];
type UpdateFlowActionData = {
    body: FlowActionUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/flow-actions/{id}';
};
type UpdateFlowActionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateFlowActionError = UpdateFlowActionErrors[keyof UpdateFlowActionErrors];
type UpdateFlowActionResponses = {
    /**
     * Success
     */
    200: PatchFlowActionEncodedResponse;
};
type UpdateFlowActionResponse = UpdateFlowActionResponses[keyof UpdateFlowActionResponses];
type GetFlowMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-action]'?: Array<'created' | 'updated' | 'definition' | 'definition.id' | 'definition.temporary_id' | 'definition.type' | 'definition.links' | 'definition.links.next_if_true' | 'definition.links.next_if_false' | 'definition.data' | 'definition.data.action_output_filter' | 'definition.data.action_output_filter.condition_groups' | 'definition.links.next' | 'definition.data.profile_filter' | 'definition.data.profile_filter.condition_groups' | 'definition.data.status' | 'definition.data.experiment_status' | 'definition.data.main_action' | 'definition.data.main_action.id' | 'definition.data.main_action.temporary_id' | 'definition.data.main_action.type' | 'definition.data.main_action.links' | 'definition.data.main_action.links.next' | 'definition.data.main_action.data' | 'definition.data.main_action.data.message' | 'definition.data.main_action.data.message.title' | 'definition.data.main_action.data.message.body' | 'definition.data.main_action.data.message.sound' | 'definition.data.main_action.data.message.badge' | 'definition.data.main_action.data.message.badge_options' | 'definition.data.main_action.data.message.badge_options.badge_config' | 'definition.data.main_action.data.message.badge_options.value' | 'definition.data.main_action.data.message.badge_options.set_from_property' | 'definition.data.main_action.data.message.image_id' | 'definition.data.main_action.data.message.dynamic_image' | 'definition.data.main_action.data.message.video_asset_id' | 'definition.data.main_action.data.message.on_open' | 'definition.data.main_action.data.message.ios_link' | 'definition.data.main_action.data.message.android_link' | 'definition.data.main_action.data.message.push_type' | 'definition.data.main_action.data.message.kv_pairs' | 'definition.data.main_action.data.message.conversion_metric_id' | 'definition.data.main_action.data.message.smart_sending_enabled' | 'definition.data.main_action.data.message.additional_filters' | 'definition.data.main_action.data.message.additional_filters.condition_groups' | 'definition.data.main_action.data.message.name' | 'definition.data.main_action.data.message.id' | 'definition.data.main_action.data.status' | 'definition.data.current_experiment' | 'definition.data.current_experiment.id' | 'definition.data.current_experiment.name' | 'definition.data.current_experiment.variations' | 'definition.data.current_experiment.allocations' | 'definition.data.current_experiment.started' | 'definition.data.current_experiment.winner_metric' | 'definition.data.message' | 'definition.data.message.from_email' | 'definition.data.message.from_label' | 'definition.data.message.reply_to_email' | 'definition.data.message.cc_email' | 'definition.data.message.bcc_email' | 'definition.data.message.subject_line' | 'definition.data.message.preview_text' | 'definition.data.message.template_id' | 'definition.data.message.smart_sending_enabled' | 'definition.data.message.transactional' | 'definition.data.message.add_tracking_params' | 'definition.data.message.custom_tracking_params' | 'definition.data.message.additional_filters' | 'definition.data.message.additional_filters.condition_groups' | 'definition.data.message.name' | 'definition.data.message.id' | 'definition.data.message.title' | 'definition.data.message.body' | 'definition.data.message.sound' | 'definition.data.message.badge' | 'definition.data.message.badge_options' | 'definition.data.message.badge_options.badge_config' | 'definition.data.message.badge_options.value' | 'definition.data.message.badge_options.set_from_property' | 'definition.data.message.image_id' | 'definition.data.message.dynamic_image' | 'definition.data.message.video_asset_id' | 'definition.data.message.on_open' | 'definition.data.message.ios_link' | 'definition.data.message.android_link' | 'definition.data.message.push_type' | 'definition.data.message.kv_pairs' | 'definition.data.message.conversion_metric_id' | 'definition.data.message.shorten_links' | 'definition.data.message.include_contact_card' | 'definition.data.message.add_org_prefix' | 'definition.data.message.add_info_link' | 'definition.data.message.add_opt_out_language' | 'definition.data.message.sms_quiet_hours_enabled' | 'definition.data.message.url' | 'definition.data.message.headers' | 'definition.data.message.to_emails' | 'definition.data.message.vendor_id' | 'definition.data.unit' | 'definition.data.value' | 'definition.data.secondary_value' | 'definition.data.timezone' | 'definition.data.delay_until_time' | 'definition.data.delay_until_weekdays' | 'definition.data.trigger_filter' | 'definition.data.trigger_filter.condition_groups' | 'definition.data.trigger_id' | 'definition.data.trigger_type' | 'definition.data.trigger_subtype' | 'definition.data.profile_operations' | 'definition.data.target_time' | 'definition.data.target_days' | 'definition.data.main_action.data.message.from_email' | 'definition.data.main_action.data.message.from_label' | 'definition.data.main_action.data.message.reply_to_email' | 'definition.data.main_action.data.message.cc_email' | 'definition.data.main_action.data.message.bcc_email' | 'definition.data.main_action.data.message.subject_line' | 'definition.data.main_action.data.message.preview_text' | 'definition.data.main_action.data.message.template_id' | 'definition.data.main_action.data.message.transactional' | 'definition.data.main_action.data.message.add_tracking_params' | 'definition.data.main_action.data.message.custom_tracking_params' | 'definition.data.main_action.data.message.shorten_links' | 'definition.data.main_action.data.message.include_contact_card' | 'definition.data.main_action.data.message.add_org_prefix' | 'definition.data.main_action.data.message.add_info_link' | 'definition.data.main_action.data.message.add_opt_out_language' | 'definition.data.main_action.data.message.sms_quiet_hours_enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings' | 'definition.data.current_experiment.automatic_winner_selection_settings.enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_date' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_statistical_certainty' | 'definition.data.service_configuration' | 'definition.data.service_configuration.service_method_type' | 'definition.data.service_configuration.report_id' | 'definition.data.service_configuration.event_key' | 'definition.data.service_configuration.event_payload' | 'definition.data.service_configuration.tracking_company_id' | 'definition.data.branches' | 'definition.data.name' | 'definition.data.on_execution' | 'definition.data.list_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-message]'?: Array<'channel' | 'created' | 'updated' | 'definition' | 'definition.from_email' | 'definition.from_label' | 'definition.reply_to_email' | 'definition.cc_email' | 'definition.bcc_email' | 'definition.subject_line' | 'definition.preview_text' | 'definition.template_id' | 'definition.smart_sending_enabled' | 'definition.transactional' | 'definition.add_tracking_params' | 'definition.custom_tracking_params' | 'definition.additional_filters' | 'definition.additional_filters.condition_groups' | 'definition.name' | 'definition.id' | 'definition.to_emails' | 'definition.title' | 'definition.body' | 'definition.sound' | 'definition.badge' | 'definition.badge_options' | 'definition.badge_options.badge_config' | 'definition.badge_options.value' | 'definition.badge_options.set_from_property' | 'definition.image_id' | 'definition.dynamic_image' | 'definition.video_asset_id' | 'definition.on_open' | 'definition.ios_link' | 'definition.android_link' | 'definition.push_type' | 'definition.kv_pairs' | 'definition.conversion_metric_id' | 'definition.shorten_links' | 'definition.include_contact_card' | 'definition.add_org_prefix' | 'definition.add_info_link' | 'definition.add_opt_out_language' | 'definition.sms_quiet_hours_enabled' | 'definition.url' | 'definition.headers' | 'definition.vendor_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-action' | 'template'>;
    };
    url: '/api/flow-messages/{id}';
};
type GetFlowMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowMessageError = GetFlowMessageErrors[keyof GetFlowMessageErrors];
type GetFlowMessageResponses = {
    /**
     * Success
     */
    200: GetFlowMessageEncodedResponseCompoundDocument;
};
type GetFlowMessageResponse = GetFlowMessageResponses[keyof GetFlowMessageResponses];
type GetActionsForFlowData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-action]'?: Array<'created' | 'updated' | 'definition' | 'definition.id' | 'definition.temporary_id' | 'definition.type' | 'definition.links' | 'definition.links.next_if_true' | 'definition.links.next_if_false' | 'definition.data' | 'definition.data.action_output_filter' | 'definition.data.action_output_filter.condition_groups' | 'definition.links.next' | 'definition.data.profile_filter' | 'definition.data.profile_filter.condition_groups' | 'definition.data.status' | 'definition.data.experiment_status' | 'definition.data.main_action' | 'definition.data.main_action.id' | 'definition.data.main_action.temporary_id' | 'definition.data.main_action.type' | 'definition.data.main_action.links' | 'definition.data.main_action.links.next' | 'definition.data.main_action.data' | 'definition.data.main_action.data.message' | 'definition.data.main_action.data.message.title' | 'definition.data.main_action.data.message.body' | 'definition.data.main_action.data.message.sound' | 'definition.data.main_action.data.message.badge' | 'definition.data.main_action.data.message.badge_options' | 'definition.data.main_action.data.message.badge_options.badge_config' | 'definition.data.main_action.data.message.badge_options.value' | 'definition.data.main_action.data.message.badge_options.set_from_property' | 'definition.data.main_action.data.message.image_id' | 'definition.data.main_action.data.message.dynamic_image' | 'definition.data.main_action.data.message.video_asset_id' | 'definition.data.main_action.data.message.on_open' | 'definition.data.main_action.data.message.ios_link' | 'definition.data.main_action.data.message.android_link' | 'definition.data.main_action.data.message.push_type' | 'definition.data.main_action.data.message.kv_pairs' | 'definition.data.main_action.data.message.conversion_metric_id' | 'definition.data.main_action.data.message.smart_sending_enabled' | 'definition.data.main_action.data.message.additional_filters' | 'definition.data.main_action.data.message.additional_filters.condition_groups' | 'definition.data.main_action.data.message.name' | 'definition.data.main_action.data.message.id' | 'definition.data.main_action.data.status' | 'definition.data.current_experiment' | 'definition.data.current_experiment.id' | 'definition.data.current_experiment.name' | 'definition.data.current_experiment.variations' | 'definition.data.current_experiment.allocations' | 'definition.data.current_experiment.started' | 'definition.data.current_experiment.winner_metric' | 'definition.data.message' | 'definition.data.message.from_email' | 'definition.data.message.from_label' | 'definition.data.message.reply_to_email' | 'definition.data.message.cc_email' | 'definition.data.message.bcc_email' | 'definition.data.message.subject_line' | 'definition.data.message.preview_text' | 'definition.data.message.template_id' | 'definition.data.message.smart_sending_enabled' | 'definition.data.message.transactional' | 'definition.data.message.add_tracking_params' | 'definition.data.message.custom_tracking_params' | 'definition.data.message.additional_filters' | 'definition.data.message.additional_filters.condition_groups' | 'definition.data.message.name' | 'definition.data.message.id' | 'definition.data.message.title' | 'definition.data.message.body' | 'definition.data.message.sound' | 'definition.data.message.badge' | 'definition.data.message.badge_options' | 'definition.data.message.badge_options.badge_config' | 'definition.data.message.badge_options.value' | 'definition.data.message.badge_options.set_from_property' | 'definition.data.message.image_id' | 'definition.data.message.dynamic_image' | 'definition.data.message.video_asset_id' | 'definition.data.message.on_open' | 'definition.data.message.ios_link' | 'definition.data.message.android_link' | 'definition.data.message.push_type' | 'definition.data.message.kv_pairs' | 'definition.data.message.conversion_metric_id' | 'definition.data.message.shorten_links' | 'definition.data.message.include_contact_card' | 'definition.data.message.add_org_prefix' | 'definition.data.message.add_info_link' | 'definition.data.message.add_opt_out_language' | 'definition.data.message.sms_quiet_hours_enabled' | 'definition.data.message.url' | 'definition.data.message.headers' | 'definition.data.message.to_emails' | 'definition.data.message.vendor_id' | 'definition.data.unit' | 'definition.data.value' | 'definition.data.secondary_value' | 'definition.data.timezone' | 'definition.data.delay_until_time' | 'definition.data.delay_until_weekdays' | 'definition.data.trigger_filter' | 'definition.data.trigger_filter.condition_groups' | 'definition.data.trigger_id' | 'definition.data.trigger_type' | 'definition.data.trigger_subtype' | 'definition.data.profile_operations' | 'definition.data.target_time' | 'definition.data.target_days' | 'definition.data.main_action.data.message.from_email' | 'definition.data.main_action.data.message.from_label' | 'definition.data.main_action.data.message.reply_to_email' | 'definition.data.main_action.data.message.cc_email' | 'definition.data.main_action.data.message.bcc_email' | 'definition.data.main_action.data.message.subject_line' | 'definition.data.main_action.data.message.preview_text' | 'definition.data.main_action.data.message.template_id' | 'definition.data.main_action.data.message.transactional' | 'definition.data.main_action.data.message.add_tracking_params' | 'definition.data.main_action.data.message.custom_tracking_params' | 'definition.data.main_action.data.message.shorten_links' | 'definition.data.main_action.data.message.include_contact_card' | 'definition.data.main_action.data.message.add_org_prefix' | 'definition.data.main_action.data.message.add_info_link' | 'definition.data.main_action.data.message.add_opt_out_language' | 'definition.data.main_action.data.message.sms_quiet_hours_enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings' | 'definition.data.current_experiment.automatic_winner_selection_settings.enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_date' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_statistical_certainty' | 'definition.data.service_configuration' | 'definition.data.service_configuration.service_method_type' | 'definition.data.service_configuration.report_id' | 'definition.data.service_configuration.event_key' | 'definition.data.service_configuration.event_payload' | 'definition.data.service_configuration.tracking_company_id' | 'definition.data.branches' | 'definition.data.name' | 'definition.data.on_execution' | 'definition.data.list_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`action_type`: `any`, `equals`<br>`status`: `equals`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 50. Min: 1. Max: 50.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'action_type' | '-action_type' | 'created' | '-created' | 'id' | '-id' | 'status' | '-status' | 'updated' | '-updated';
    };
    url: '/api/flows/{id}/flow-actions';
};
type GetActionsForFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetActionsForFlowError = GetActionsForFlowErrors[keyof GetActionsForFlowErrors];
type GetActionsForFlowResponses = {
    /**
     * Success
     */
    200: GetFlowActionEncodedResponseCollection;
};
type GetActionsForFlowResponse = GetActionsForFlowResponses[keyof GetActionsForFlowResponses];
type GetActionIdsForFlowData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`action_type`: `any`, `equals`<br>`status`: `equals`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 50. Min: 1. Max: 50.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'action_type' | '-action_type' | 'created' | '-created' | 'id' | '-id' | 'status' | '-status' | 'updated' | '-updated';
    };
    url: '/api/flows/{id}/relationships/flow-actions';
};
type GetActionIdsForFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetActionIdsForFlowError = GetActionIdsForFlowErrors[keyof GetActionIdsForFlowErrors];
type GetActionIdsForFlowResponses = {
    /**
     * Success
     */
    200: GetFlowFlowActionRelationshipListResponseCollection;
};
type GetActionIdsForFlowResponse = GetActionIdsForFlowResponses[keyof GetActionIdsForFlowResponses];
type GetTagsForFlowData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
    };
    url: '/api/flows/{id}/tags';
};
type GetTagsForFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagsForFlowError = GetTagsForFlowErrors[keyof GetTagsForFlowErrors];
type GetTagsForFlowResponses = {
    /**
     * Success
     */
    200: GetTagResponseCollection;
};
type GetTagsForFlowResponse = GetTagsForFlowResponses[keyof GetTagsForFlowResponses];
type GetTagIdsForFlowData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/flows/{id}/relationships/tags';
};
type GetTagIdsForFlowErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagIdsForFlowError = GetTagIdsForFlowErrors[keyof GetTagIdsForFlowErrors];
type GetTagIdsForFlowResponses = {
    /**
     * Success
     */
    200: GetFlowTagsRelationshipsResponseCollection;
};
type GetTagIdsForFlowResponse = GetTagIdsForFlowResponses[keyof GetTagIdsForFlowResponses];
type GetFlowForFlowActionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
    };
    url: '/api/flow-actions/{id}/flow';
};
type GetFlowForFlowActionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowForFlowActionError = GetFlowForFlowActionErrors[keyof GetFlowForFlowActionErrors];
type GetFlowForFlowActionResponses = {
    /**
     * Success
     */
    200: GetFlowResponse;
};
type GetFlowForFlowActionResponse = GetFlowForFlowActionResponses[keyof GetFlowForFlowActionResponses];
type GetFlowIdForFlowActionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/flow-actions/{id}/relationships/flow';
};
type GetFlowIdForFlowActionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowIdForFlowActionError = GetFlowIdForFlowActionErrors[keyof GetFlowIdForFlowActionErrors];
type GetFlowIdForFlowActionResponses = {
    /**
     * Success
     */
    200: GetFlowActionFlowRelationshipResponse;
};
type GetFlowIdForFlowActionResponse = GetFlowIdForFlowActionResponses[keyof GetFlowIdForFlowActionResponses];
type GetFlowActionMessagesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-message]'?: Array<'channel' | 'created' | 'updated' | 'definition' | 'definition.from_email' | 'definition.from_label' | 'definition.reply_to_email' | 'definition.cc_email' | 'definition.bcc_email' | 'definition.subject_line' | 'definition.preview_text' | 'definition.template_id' | 'definition.smart_sending_enabled' | 'definition.transactional' | 'definition.add_tracking_params' | 'definition.custom_tracking_params' | 'definition.additional_filters' | 'definition.additional_filters.condition_groups' | 'definition.name' | 'definition.id' | 'definition.to_emails' | 'definition.title' | 'definition.body' | 'definition.sound' | 'definition.badge' | 'definition.badge_options' | 'definition.badge_options.badge_config' | 'definition.badge_options.value' | 'definition.badge_options.set_from_property' | 'definition.image_id' | 'definition.dynamic_image' | 'definition.video_asset_id' | 'definition.on_open' | 'definition.ios_link' | 'definition.android_link' | 'definition.push_type' | 'definition.kv_pairs' | 'definition.conversion_metric_id' | 'definition.shorten_links' | 'definition.include_contact_card' | 'definition.add_org_prefix' | 'definition.add_info_link' | 'definition.add_opt_out_language' | 'definition.sms_quiet_hours_enabled' | 'definition.url' | 'definition.headers' | 'definition.vendor_id'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 50. Min: 1. Max: 50.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/flow-actions/{id}/flow-messages';
};
type GetFlowActionMessagesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowActionMessagesError = GetFlowActionMessagesErrors[keyof GetFlowActionMessagesErrors];
type GetFlowActionMessagesResponses = {
    /**
     * Success
     */
    200: GetFlowMessageEncodedResponseCollection;
};
type GetFlowActionMessagesResponse = GetFlowActionMessagesResponses[keyof GetFlowActionMessagesResponses];
type GetMessageIdsForFlowActionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 50. Min: 1. Max: 50.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/flow-actions/{id}/relationships/flow-messages';
};
type GetMessageIdsForFlowActionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMessageIdsForFlowActionError = GetMessageIdsForFlowActionErrors[keyof GetMessageIdsForFlowActionErrors];
type GetMessageIdsForFlowActionResponses = {
    /**
     * Success
     */
    200: GetFlowActionFlowMessageRelationshipResponseCollection;
};
type GetMessageIdsForFlowActionResponse = GetMessageIdsForFlowActionResponses[keyof GetMessageIdsForFlowActionResponses];
type GetActionForFlowMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow-action]'?: Array<'created' | 'updated' | 'definition' | 'definition.id' | 'definition.temporary_id' | 'definition.type' | 'definition.links' | 'definition.links.next_if_true' | 'definition.links.next_if_false' | 'definition.data' | 'definition.data.action_output_filter' | 'definition.data.action_output_filter.condition_groups' | 'definition.links.next' | 'definition.data.profile_filter' | 'definition.data.profile_filter.condition_groups' | 'definition.data.status' | 'definition.data.experiment_status' | 'definition.data.main_action' | 'definition.data.main_action.id' | 'definition.data.main_action.temporary_id' | 'definition.data.main_action.type' | 'definition.data.main_action.links' | 'definition.data.main_action.links.next' | 'definition.data.main_action.data' | 'definition.data.main_action.data.message' | 'definition.data.main_action.data.message.title' | 'definition.data.main_action.data.message.body' | 'definition.data.main_action.data.message.sound' | 'definition.data.main_action.data.message.badge' | 'definition.data.main_action.data.message.badge_options' | 'definition.data.main_action.data.message.badge_options.badge_config' | 'definition.data.main_action.data.message.badge_options.value' | 'definition.data.main_action.data.message.badge_options.set_from_property' | 'definition.data.main_action.data.message.image_id' | 'definition.data.main_action.data.message.dynamic_image' | 'definition.data.main_action.data.message.video_asset_id' | 'definition.data.main_action.data.message.on_open' | 'definition.data.main_action.data.message.ios_link' | 'definition.data.main_action.data.message.android_link' | 'definition.data.main_action.data.message.push_type' | 'definition.data.main_action.data.message.kv_pairs' | 'definition.data.main_action.data.message.conversion_metric_id' | 'definition.data.main_action.data.message.smart_sending_enabled' | 'definition.data.main_action.data.message.additional_filters' | 'definition.data.main_action.data.message.additional_filters.condition_groups' | 'definition.data.main_action.data.message.name' | 'definition.data.main_action.data.message.id' | 'definition.data.main_action.data.status' | 'definition.data.current_experiment' | 'definition.data.current_experiment.id' | 'definition.data.current_experiment.name' | 'definition.data.current_experiment.variations' | 'definition.data.current_experiment.allocations' | 'definition.data.current_experiment.started' | 'definition.data.current_experiment.winner_metric' | 'definition.data.message' | 'definition.data.message.from_email' | 'definition.data.message.from_label' | 'definition.data.message.reply_to_email' | 'definition.data.message.cc_email' | 'definition.data.message.bcc_email' | 'definition.data.message.subject_line' | 'definition.data.message.preview_text' | 'definition.data.message.template_id' | 'definition.data.message.smart_sending_enabled' | 'definition.data.message.transactional' | 'definition.data.message.add_tracking_params' | 'definition.data.message.custom_tracking_params' | 'definition.data.message.additional_filters' | 'definition.data.message.additional_filters.condition_groups' | 'definition.data.message.name' | 'definition.data.message.id' | 'definition.data.message.title' | 'definition.data.message.body' | 'definition.data.message.sound' | 'definition.data.message.badge' | 'definition.data.message.badge_options' | 'definition.data.message.badge_options.badge_config' | 'definition.data.message.badge_options.value' | 'definition.data.message.badge_options.set_from_property' | 'definition.data.message.image_id' | 'definition.data.message.dynamic_image' | 'definition.data.message.video_asset_id' | 'definition.data.message.on_open' | 'definition.data.message.ios_link' | 'definition.data.message.android_link' | 'definition.data.message.push_type' | 'definition.data.message.kv_pairs' | 'definition.data.message.conversion_metric_id' | 'definition.data.message.shorten_links' | 'definition.data.message.include_contact_card' | 'definition.data.message.add_org_prefix' | 'definition.data.message.add_info_link' | 'definition.data.message.add_opt_out_language' | 'definition.data.message.sms_quiet_hours_enabled' | 'definition.data.message.url' | 'definition.data.message.headers' | 'definition.data.message.to_emails' | 'definition.data.message.vendor_id' | 'definition.data.unit' | 'definition.data.value' | 'definition.data.secondary_value' | 'definition.data.timezone' | 'definition.data.delay_until_time' | 'definition.data.delay_until_weekdays' | 'definition.data.trigger_filter' | 'definition.data.trigger_filter.condition_groups' | 'definition.data.trigger_id' | 'definition.data.trigger_type' | 'definition.data.trigger_subtype' | 'definition.data.profile_operations' | 'definition.data.target_time' | 'definition.data.target_days' | 'definition.data.main_action.data.message.from_email' | 'definition.data.main_action.data.message.from_label' | 'definition.data.main_action.data.message.reply_to_email' | 'definition.data.main_action.data.message.cc_email' | 'definition.data.main_action.data.message.bcc_email' | 'definition.data.main_action.data.message.subject_line' | 'definition.data.main_action.data.message.preview_text' | 'definition.data.main_action.data.message.template_id' | 'definition.data.main_action.data.message.transactional' | 'definition.data.main_action.data.message.add_tracking_params' | 'definition.data.main_action.data.message.custom_tracking_params' | 'definition.data.main_action.data.message.shorten_links' | 'definition.data.main_action.data.message.include_contact_card' | 'definition.data.main_action.data.message.add_org_prefix' | 'definition.data.main_action.data.message.add_info_link' | 'definition.data.main_action.data.message.add_opt_out_language' | 'definition.data.main_action.data.message.sms_quiet_hours_enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings' | 'definition.data.current_experiment.automatic_winner_selection_settings.enabled' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_date' | 'definition.data.current_experiment.automatic_winner_selection_settings.automatic_end_statistical_certainty' | 'definition.data.service_configuration' | 'definition.data.service_configuration.service_method_type' | 'definition.data.service_configuration.report_id' | 'definition.data.service_configuration.event_key' | 'definition.data.service_configuration.event_payload' | 'definition.data.service_configuration.tracking_company_id' | 'definition.data.branches' | 'definition.data.name' | 'definition.data.on_execution' | 'definition.data.list_id'>;
    };
    url: '/api/flow-messages/{id}/flow-action';
};
type GetActionForFlowMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetActionForFlowMessageError = GetActionForFlowMessageErrors[keyof GetActionForFlowMessageErrors];
type GetActionForFlowMessageResponses = {
    /**
     * Success
     */
    200: GetFlowActionEncodedResponse;
};
type GetActionForFlowMessageResponse = GetActionForFlowMessageResponses[keyof GetActionForFlowMessageResponses];
type GetActionIdForFlowMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/flow-messages/{id}/relationships/flow-action';
};
type GetActionIdForFlowMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetActionIdForFlowMessageError = GetActionIdForFlowMessageErrors[keyof GetActionIdForFlowMessageErrors];
type GetActionIdForFlowMessageResponses = {
    /**
     * Success
     */
    200: GetFlowMessageActionRelationshipResponse;
};
type GetActionIdForFlowMessageResponse = GetActionIdForFlowMessageResponses[keyof GetActionIdForFlowMessageResponses];
type GetTemplateForFlowMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
    };
    url: '/api/flow-messages/{id}/template';
};
type GetTemplateForFlowMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTemplateForFlowMessageError = GetTemplateForFlowMessageErrors[keyof GetTemplateForFlowMessageErrors];
type GetTemplateForFlowMessageResponses = {
    /**
     * Success
     */
    200: GetTemplateResponse;
};
type GetTemplateForFlowMessageResponse = GetTemplateForFlowMessageResponses[keyof GetTemplateForFlowMessageResponses];
type GetTemplateIdForFlowMessageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/flow-messages/{id}/relationships/template';
};
type GetTemplateIdForFlowMessageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTemplateIdForFlowMessageError = GetTemplateIdForFlowMessageErrors[keyof GetTemplateIdForFlowMessageErrors];
type GetTemplateIdForFlowMessageResponses = {
    /**
     * Success
     */
    200: GetFlowMessageTemplateRelationshipResponse;
};
type GetTemplateIdForFlowMessageResponse = GetTemplateIdForFlowMessageResponses[keyof GetTemplateIdForFlowMessageResponses];
type GetFormsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[form]'?: Array<'name' | 'status' | 'ab_test' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`name`: `any`, `contains`, `equals`<br>`ab_test`: `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`created_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created_at' | '-created_at' | 'updated_at' | '-updated_at';
    };
    url: '/api/forms';
};
type GetFormsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFormsError = GetFormsErrors[keyof GetFormsErrors];
type GetFormsResponses = {
    /**
     * Success
     */
    200: GetFormResponseCollection;
};
type GetFormsResponse = GetFormsResponses[keyof GetFormsResponses];
type CreateFormData = {
    /**
     * Creates a Form from parameters
     */
    body: FormCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/forms';
};
type CreateFormErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateFormError = CreateFormErrors[keyof CreateFormErrors];
type CreateFormResponses = {
    /**
     * Success
     */
    201: PostEncodedFormResponse;
};
type CreateFormResponse = CreateFormResponses[keyof CreateFormResponses];
type DeleteFormData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form
         */
        id: string;
    };
    query?: never;
    url: '/api/forms/{id}';
};
type DeleteFormErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteFormError = DeleteFormErrors[keyof DeleteFormErrors];
type DeleteFormResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteFormResponse = DeleteFormResponses[keyof DeleteFormResponses];
type GetFormData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[form]'?: Array<'status' | 'ab_test' | 'name' | 'definition' | 'definition.versions' | 'created_at' | 'updated_at'>;
    };
    url: '/api/forms/{id}';
};
type GetFormErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFormError = GetFormErrors[keyof GetFormErrors];
type GetFormResponses = {
    /**
     * Success
     */
    200: GetEncodedFormResponse;
};
type GetFormResponse2 = GetFormResponses[keyof GetFormResponses];
type GetFormVersionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form version
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[form-version]'?: Array<'form_type' | 'variation_name' | 'ab_test' | 'ab_test.variation_name' | 'status' | 'created_at' | 'updated_at'>;
    };
    url: '/api/form-versions/{id}';
};
type GetFormVersionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFormVersionError = GetFormVersionErrors[keyof GetFormVersionErrors];
type GetFormVersionResponses = {
    /**
     * Success
     */
    200: GetFormVersionResponse;
};
type GetFormVersionResponse2 = GetFormVersionResponses[keyof GetFormVersionResponses];
type GetVersionsForFormData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[form-version]'?: Array<'form_type' | 'variation_name' | 'ab_test' | 'ab_test.variation_name' | 'status' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`form_type`: `any`, `equals`<br>`status`: `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`created_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created_at' | '-created_at' | 'updated_at' | '-updated_at';
    };
    url: '/api/forms/{id}/form-versions';
};
type GetVersionsForFormErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetVersionsForFormError = GetVersionsForFormErrors[keyof GetVersionsForFormErrors];
type GetVersionsForFormResponses = {
    /**
     * Success
     */
    200: GetFormVersionResponseCollection;
};
type GetVersionsForFormResponse = GetVersionsForFormResponses[keyof GetVersionsForFormResponses];
type GetVersionIdsForFormData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form
         */
        id: string | null;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`form_type`: `any`, `equals`<br>`status`: `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`created_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created_at' | '-created_at' | 'updated_at' | '-updated_at';
    };
    url: '/api/forms/{id}/relationships/form-versions';
};
type GetVersionIdsForFormErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetVersionIdsForFormError = GetVersionIdsForFormErrors[keyof GetVersionIdsForFormErrors];
type GetVersionIdsForFormResponses = {
    /**
     * Success
     */
    200: GetFormVersionsRelationshipsResponseCollection;
};
type GetVersionIdsForFormResponse = GetVersionIdsForFormResponses[keyof GetVersionIdsForFormResponses];
type GetFormForFormVersionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form version
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[form]'?: Array<'name' | 'status' | 'ab_test' | 'created_at' | 'updated_at'>;
    };
    url: '/api/form-versions/{id}/form';
};
type GetFormForFormVersionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFormForFormVersionError = GetFormForFormVersionErrors[keyof GetFormForFormVersionErrors];
type GetFormForFormVersionResponses = {
    /**
     * Success
     */
    200: GetFormResponse;
};
type GetFormForFormVersionResponse = GetFormForFormVersionResponses[keyof GetFormForFormVersionResponses];
type GetFormIdForFormVersionData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the form version
         */
        id: string;
    };
    query?: never;
    url: '/api/form-versions/{id}/relationships/form';
};
type GetFormIdForFormVersionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFormIdForFormVersionError = GetFormIdForFormVersionErrors[keyof GetFormIdForFormVersionErrors];
type GetFormIdForFormVersionResponses = {
    /**
     * Success
     */
    200: GetFormVersionFormRelationshipResponse;
};
type GetFormIdForFormVersionResponse = GetFormIdForFormVersionResponses[keyof GetFormIdForFormVersionResponses];
type GetImagesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[image]'?: Array<'name' | 'image_url' | 'format' | 'size' | 'hidden' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`format`: `any`, `equals`<br>`name`: `any`, `contains`, `ends-with`, `equals`, `starts-with`<br>`size`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`hidden`: `any`, `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'format' | '-format' | 'id' | '-id' | 'name' | '-name' | 'size' | '-size' | 'updated_at' | '-updated_at';
    };
    url: '/api/images';
};
type GetImagesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetImagesError = GetImagesErrors[keyof GetImagesErrors];
type GetImagesResponses = {
    /**
     * Success
     */
    200: GetImageResponseCollection;
};
type GetImagesResponse = GetImagesResponses[keyof GetImagesResponses];
type UploadImageFromUrlData = {
    body: ImageCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/images';
};
type UploadImageFromUrlErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UploadImageFromUrlError = UploadImageFromUrlErrors[keyof UploadImageFromUrlErrors];
type UploadImageFromUrlResponses = {
    /**
     * Success
     */
    201: PostImageResponse;
};
type UploadImageFromUrlResponse = UploadImageFromUrlResponses[keyof UploadImageFromUrlResponses];
type GetImageData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the image
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[image]'?: Array<'name' | 'image_url' | 'format' | 'size' | 'hidden' | 'updated_at'>;
    };
    url: '/api/images/{id}';
};
type GetImageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetImageError = GetImageErrors[keyof GetImageErrors];
type GetImageResponses = {
    /**
     * Success
     */
    200: GetImageResponse;
};
type GetImageResponse2 = GetImageResponses[keyof GetImageResponses];
type UpdateImageData = {
    body: ImagePartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the image
         */
        id: string;
    };
    query?: never;
    url: '/api/images/{id}';
};
type UpdateImageErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateImageError = UpdateImageErrors[keyof UpdateImageErrors];
type UpdateImageResponses = {
    /**
     * Success
     */
    200: PatchImageResponse;
};
type UpdateImageResponse = UpdateImageResponses[keyof UpdateImageResponses];
type UploadImageFromFileData = {
    body: ImageUploadQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/image-upload';
};
type UploadImageFromFileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UploadImageFromFileError = UploadImageFromFileErrors[keyof UploadImageFromFileErrors];
type UploadImageFromFileResponses = {
    /**
     * Success
     */
    201: PostImageResponse;
};
type UploadImageFromFileResponse = UploadImageFromFileResponses[keyof UploadImageFromFileResponses];
type GetListsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[list]'?: Array<'name' | 'created' | 'updated' | 'opt_in_process'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `any`, `equals`<br>`id`: `any`, `equals`<br>`created`: `greater-than`<br>`updated`: `greater-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-triggers' | 'tags'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/lists';
};
type GetListsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListsError = GetListsErrors[keyof GetListsErrors];
type GetListsResponses = {
    /**
     * Success
     */
    200: GetListListResponseCollectionCompoundDocument;
};
type GetListsResponse = GetListsResponses[keyof GetListsResponses];
type CreateListData = {
    body: ListCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/lists';
};
type CreateListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateListError = CreateListErrors[keyof CreateListErrors];
type CreateListResponses = {
    /**
     * Success
     */
    201: PostListCreateResponse;
};
type CreateListResponse = CreateListResponses[keyof CreateListResponses];
type DeleteListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: never;
    url: '/api/lists/{id}';
};
type DeleteListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteListError = DeleteListErrors[keyof DeleteListErrors];
type DeleteListResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteListResponse = DeleteListResponses[keyof DeleteListResponses];
type GetListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'profile_count'
         */
        'additional-fields[list]'?: Array<'profile_count'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[list]'?: Array<'name' | 'created' | 'updated' | 'opt_in_process' | 'profile_count'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-triggers' | 'tags'>;
    };
    url: '/api/lists/{id}';
};
type GetListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListError = GetListErrors[keyof GetListErrors];
type GetListResponses = {
    /**
     * Success
     */
    200: GetListRetrieveResponseCompoundDocument;
};
type GetListResponse = GetListResponses[keyof GetListResponses];
type UpdateListData = {
    body: ListPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: never;
    url: '/api/lists/{id}';
};
type UpdateListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateListError = UpdateListErrors[keyof UpdateListErrors];
type UpdateListResponses = {
    /**
     * Success
     */
    200: PatchListPartialUpdateResponse;
};
type UpdateListResponse = UpdateListResponses[keyof UpdateListResponses];
type GetTagsForListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
    };
    url: '/api/lists/{id}/tags';
};
type GetTagsForListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagsForListError = GetTagsForListErrors[keyof GetTagsForListErrors];
type GetTagsForListResponses = {
    /**
     * Success
     */
    200: GetTagResponseCollection;
};
type GetTagsForListResponse = GetTagsForListResponses[keyof GetTagsForListResponses];
type GetTagIdsForListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: never;
    url: '/api/lists/{id}/relationships/tags';
};
type GetTagIdsForListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagIdsForListError = GetTagIdsForListErrors[keyof GetTagIdsForListErrors];
type GetTagIdsForListResponses = {
    /**
     * Success
     */
    200: GetListTagsRelationshipsResponseCollection;
};
type GetTagIdsForListResponse = GetTagIdsForListResponses[keyof GetTagIdsForListResponses];
type GetProfilesForListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'joined_group_at' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`push_token`: `any`, `equals`<br>`_kx`: `equals`<br>`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'joined_group_at' | '-joined_group_at';
    };
    url: '/api/lists/{id}/profiles';
};
type GetProfilesForListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfilesForListError = GetProfilesForListErrors[keyof GetProfilesForListErrors];
type GetProfilesForListResponses = {
    /**
     * Success
     */
    200: GetListMemberResponseCollection;
};
type GetProfilesForListResponse = GetProfilesForListResponses[keyof GetProfilesForListResponses];
type RemoveProfilesFromListData = {
    body: ListMembersDeleteQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/lists/{id}/relationships/profiles';
};
type RemoveProfilesFromListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveProfilesFromListError = RemoveProfilesFromListErrors[keyof RemoveProfilesFromListErrors];
type RemoveProfilesFromListResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveProfilesFromListResponse = RemoveProfilesFromListResponses[keyof RemoveProfilesFromListResponses];
type GetProfileIdsForListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`push_token`: `any`, `equals`<br>`_kx`: `equals`<br>`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'joined_group_at' | '-joined_group_at';
    };
    url: '/api/lists/{id}/relationships/profiles';
};
type GetProfileIdsForListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileIdsForListError = GetProfileIdsForListErrors[keyof GetProfileIdsForListErrors];
type GetProfileIdsForListResponses = {
    /**
     * Success
     */
    200: GetListProfilesRelationshipsResponseCollection;
};
type GetProfileIdsForListResponse = GetProfileIdsForListResponses[keyof GetProfileIdsForListResponses];
type AddProfilesToListData = {
    body: ListMembersAddQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/lists/{id}/relationships/profiles';
};
type AddProfilesToListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type AddProfilesToListError = AddProfilesToListErrors[keyof AddProfilesToListErrors];
type AddProfilesToListResponses = {
    /**
     * Success
     */
    204: void;
};
type AddProfilesToListResponse = AddProfilesToListResponses[keyof AddProfilesToListResponses];
type GetFlowsTriggeredByListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
    };
    url: '/api/lists/{id}/flow-triggers';
};
type GetFlowsTriggeredByListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowsTriggeredByListError = GetFlowsTriggeredByListErrors[keyof GetFlowsTriggeredByListErrors];
type GetFlowsTriggeredByListResponses = {
    /**
     * Success
     */
    200: GetFlowResponseCollection;
};
type GetFlowsTriggeredByListResponse = GetFlowsTriggeredByListResponses[keyof GetFlowsTriggeredByListResponses];
type GetIdsForFlowsTriggeredByListData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this list. Generated by Klaviyo.
         */
        id: string;
    };
    query?: never;
    url: '/api/lists/{id}/relationships/flow-triggers';
};
type GetIdsForFlowsTriggeredByListErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetIdsForFlowsTriggeredByListError = GetIdsForFlowsTriggeredByListErrors[keyof GetIdsForFlowsTriggeredByListErrors];
type GetIdsForFlowsTriggeredByListResponses = {
    /**
     * Success
     */
    200: GetListFlowTriggersRelationshipsResponseCollection;
};
type GetIdsForFlowsTriggeredByListResponse = GetIdsForFlowsTriggeredByListResponses[keyof GetIdsForFlowsTriggeredByListResponses];
type GetMetricsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`integration.name`: `equals`<br>`integration.category`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-triggers'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
    };
    url: '/api/metrics';
};
type GetMetricsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricsError = GetMetricsErrors[keyof GetMetricsErrors];
type GetMetricsResponses = {
    /**
     * Success
     */
    200: GetMetricResponseCollectionCompoundDocument;
};
type GetMetricsResponse = GetMetricsResponses[keyof GetMetricsResponses];
type GetMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Metric ID
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-triggers'>;
    };
    url: '/api/metrics/{id}';
};
type GetMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricError = GetMetricErrors[keyof GetMetricErrors];
type GetMetricResponses = {
    /**
     * Success
     */
    200: GetMetricResponseCompoundDocument;
};
type GetMetricResponse2 = GetMetricResponses[keyof GetMetricResponses];
type GetMetricPropertyData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the metric property
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'sample_values'
         */
        'additional-fields[metric-property]'?: Array<'sample_values'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric-property]'?: Array<'label' | 'property' | 'inferred_type' | 'sample_values'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'metric'>;
    };
    url: '/api/metric-properties/{id}';
};
type GetMetricPropertyErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricPropertyError = GetMetricPropertyErrors[keyof GetMetricPropertyErrors];
type GetMetricPropertyResponses = {
    /**
     * Success
     */
    200: GetMetricPropertyResponseCompoundDocument;
};
type GetMetricPropertyResponse = GetMetricPropertyResponses[keyof GetMetricPropertyResponses];
type GetCustomMetricsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[custom-metric]'?: Array<'name' | 'created' | 'updated' | 'definition' | 'definition.aggregation_method' | 'definition.metric_groups'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'metrics'>;
    };
    url: '/api/custom-metrics';
};
type GetCustomMetricsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCustomMetricsError = GetCustomMetricsErrors[keyof GetCustomMetricsErrors];
type GetCustomMetricsResponses = {
    /**
     * Success
     */
    200: GetCustomMetricResponseCollectionCompoundDocument;
};
type GetCustomMetricsResponse = GetCustomMetricsResponses[keyof GetCustomMetricsResponses];
type CreateCustomMetricData = {
    /**
     * Create a custom metric.
     */
    body: CustomMetricCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/custom-metrics';
};
type CreateCustomMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateCustomMetricError = CreateCustomMetricErrors[keyof CreateCustomMetricErrors];
type CreateCustomMetricResponses = {
    /**
     * Success
     */
    201: PostCustomMetricResponse;
};
type CreateCustomMetricResponse = CreateCustomMetricResponses[keyof CreateCustomMetricResponses];
type DeleteCustomMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the custom metric
         */
        id: string;
    };
    query?: never;
    url: '/api/custom-metrics/{id}';
};
type DeleteCustomMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteCustomMetricError = DeleteCustomMetricErrors[keyof DeleteCustomMetricErrors];
type DeleteCustomMetricResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteCustomMetricResponse = DeleteCustomMetricResponses[keyof DeleteCustomMetricResponses];
type GetCustomMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the custom metric
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[custom-metric]'?: Array<'name' | 'created' | 'updated' | 'definition' | 'definition.aggregation_method' | 'definition.metric_groups'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'metrics'>;
    };
    url: '/api/custom-metrics/{id}';
};
type GetCustomMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCustomMetricError = GetCustomMetricErrors[keyof GetCustomMetricErrors];
type GetCustomMetricResponses = {
    /**
     * Success
     */
    200: GetCustomMetricResponseCompoundDocument;
};
type GetCustomMetricResponse2 = GetCustomMetricResponses[keyof GetCustomMetricResponses];
type UpdateCustomMetricData = {
    /**
     * Update a custom metric by ID.
     */
    body: CustomMetricPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the custom metric
         */
        id: string;
    };
    query?: never;
    url: '/api/custom-metrics/{id}';
};
type UpdateCustomMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateCustomMetricError = UpdateCustomMetricErrors[keyof UpdateCustomMetricErrors];
type UpdateCustomMetricResponses = {
    /**
     * Success
     */
    200: PatchCustomMetricResponse;
};
type UpdateCustomMetricResponse = UpdateCustomMetricResponses[keyof UpdateCustomMetricResponses];
type GetMappedMetricsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[custom-metric]'?: Array<'name' | 'created' | 'updated' | 'definition' | 'definition.aggregation_method' | 'definition.metric_groups'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[mapped-metric]'?: Array<'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'custom-metric' | 'metric'>;
    };
    url: '/api/mapped-metrics';
};
type GetMappedMetricsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMappedMetricsError = GetMappedMetricsErrors[keyof GetMappedMetricsErrors];
type GetMappedMetricsResponses = {
    /**
     * Success
     */
    200: GetMappedMetricResponseCollectionCompoundDocument;
};
type GetMappedMetricsResponse = GetMappedMetricsResponses[keyof GetMappedMetricsResponses];
type GetMappedMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[custom-metric]'?: Array<'name' | 'created' | 'updated' | 'definition' | 'definition.aggregation_method' | 'definition.metric_groups'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[mapped-metric]'?: Array<'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'custom-metric' | 'metric'>;
    };
    url: '/api/mapped-metrics/{id}';
};
type GetMappedMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMappedMetricError = GetMappedMetricErrors[keyof GetMappedMetricErrors];
type GetMappedMetricResponses = {
    /**
     * Success
     */
    200: GetMappedMetricResponseCompoundDocument;
};
type GetMappedMetricResponse = GetMappedMetricResponses[keyof GetMappedMetricResponses];
type UpdateMappedMetricData = {
    /**
     * Update a mapped metric by ID
     */
    body: MappedMetricPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    };
    query?: never;
    url: '/api/mapped-metrics/{id}';
};
type UpdateMappedMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateMappedMetricError = UpdateMappedMetricErrors[keyof UpdateMappedMetricErrors];
type UpdateMappedMetricResponses = {
    /**
     * Success
     */
    200: PatchMappedMetricResponse;
};
type UpdateMappedMetricResponse = UpdateMappedMetricResponses[keyof UpdateMappedMetricResponses];
type QueryMetricAggregatesData = {
    /**
     * Retrieve Metric Aggregations
     */
    body: MetricAggregateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/metric-aggregates';
};
type QueryMetricAggregatesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QueryMetricAggregatesError = QueryMetricAggregatesErrors[keyof QueryMetricAggregatesErrors];
type QueryMetricAggregatesResponses = {
    /**
     * Success
     */
    200: PostMetricAggregateResponse;
};
type QueryMetricAggregatesResponse = QueryMetricAggregatesResponses[keyof QueryMetricAggregatesResponses];
type GetFlowsTriggeredByMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
    };
    url: '/api/metrics/{id}/flow-triggers';
};
type GetFlowsTriggeredByMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowsTriggeredByMetricError = GetFlowsTriggeredByMetricErrors[keyof GetFlowsTriggeredByMetricErrors];
type GetFlowsTriggeredByMetricResponses = {
    /**
     * Success
     */
    200: GetFlowResponseCollection;
};
type GetFlowsTriggeredByMetricResponse = GetFlowsTriggeredByMetricResponses[keyof GetFlowsTriggeredByMetricResponses];
type GetIdsForFlowsTriggeredByMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/metrics/{id}/relationships/flow-triggers';
};
type GetIdsForFlowsTriggeredByMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetIdsForFlowsTriggeredByMetricError = GetIdsForFlowsTriggeredByMetricErrors[keyof GetIdsForFlowsTriggeredByMetricErrors];
type GetIdsForFlowsTriggeredByMetricResponses = {
    /**
     * Success
     */
    200: GetMetricFlowTriggersRelationshipsResponseCollection;
};
type GetIdsForFlowsTriggeredByMetricResponse = GetIdsForFlowsTriggeredByMetricResponses[keyof GetIdsForFlowsTriggeredByMetricResponses];
type GetPropertiesForMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the metric
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'sample_values'
         */
        'additional-fields[metric-property]'?: Array<'sample_values'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric-property]'?: Array<'label' | 'property' | 'inferred_type' | 'sample_values'>;
    };
    url: '/api/metrics/{id}/metric-properties';
};
type GetPropertiesForMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetPropertiesForMetricError = GetPropertiesForMetricErrors[keyof GetPropertiesForMetricErrors];
type GetPropertiesForMetricResponses = {
    /**
     * Success
     */
    200: GetMetricPropertyResponseCollection;
};
type GetPropertiesForMetricResponse = GetPropertiesForMetricResponses[keyof GetPropertiesForMetricResponses];
type GetPropertyIdsForMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the metric
         */
        id: string;
    };
    query?: never;
    url: '/api/metrics/{id}/relationships/metric-properties';
};
type GetPropertyIdsForMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetPropertyIdsForMetricError = GetPropertyIdsForMetricErrors[keyof GetPropertyIdsForMetricErrors];
type GetPropertyIdsForMetricResponses = {
    /**
     * Success
     */
    200: GetMetricPropertiesRelationshipsResponseCollection;
};
type GetPropertyIdsForMetricResponse = GetPropertyIdsForMetricResponses[keyof GetPropertyIdsForMetricResponses];
type GetMetricForMetricPropertyData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the metric property
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
    };
    url: '/api/metric-properties/{id}/metric';
};
type GetMetricForMetricPropertyErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricForMetricPropertyError = GetMetricForMetricPropertyErrors[keyof GetMetricForMetricPropertyErrors];
type GetMetricForMetricPropertyResponses = {
    /**
     * Success
     */
    200: GetMetricResponse;
};
type GetMetricForMetricPropertyResponse = GetMetricForMetricPropertyResponses[keyof GetMetricForMetricPropertyResponses];
type GetMetricIdForMetricPropertyData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the metric property
         */
        id: string;
    };
    query?: never;
    url: '/api/metric-properties/{id}/relationships/metric';
};
type GetMetricIdForMetricPropertyErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricIdForMetricPropertyError = GetMetricIdForMetricPropertyErrors[keyof GetMetricIdForMetricPropertyErrors];
type GetMetricIdForMetricPropertyResponses = {
    /**
     * Success
     */
    200: GetMetricPropertyMetricRelationshipResponse;
};
type GetMetricIdForMetricPropertyResponse = GetMetricIdForMetricPropertyResponses[keyof GetMetricIdForMetricPropertyResponses];
type GetMetricsForCustomMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the custom metric
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
    };
    url: '/api/custom-metrics/{id}/metrics';
};
type GetMetricsForCustomMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricsForCustomMetricError = GetMetricsForCustomMetricErrors[keyof GetMetricsForCustomMetricErrors];
type GetMetricsForCustomMetricResponses = {
    /**
     * Success
     */
    200: GetMetricResponseCollection;
};
type GetMetricsForCustomMetricResponse = GetMetricsForCustomMetricResponses[keyof GetMetricsForCustomMetricResponses];
type GetMetricIdsForCustomMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the custom metric
         */
        id: string;
    };
    query?: never;
    url: '/api/custom-metrics/{id}/relationships/metrics';
};
type GetMetricIdsForCustomMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricIdsForCustomMetricError = GetMetricIdsForCustomMetricErrors[keyof GetMetricIdsForCustomMetricErrors];
type GetMetricIdsForCustomMetricResponses = {
    /**
     * Success
     */
    200: GetCustomMetricMetricsRelationshipsResponseCollection;
};
type GetMetricIdsForCustomMetricResponse = GetMetricIdsForCustomMetricResponses[keyof GetMetricIdsForCustomMetricResponses];
type GetMetricForMappedMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[metric]'?: Array<'name' | 'created' | 'updated' | 'integration'>;
    };
    url: '/api/mapped-metrics/{id}/metric';
};
type GetMetricForMappedMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricForMappedMetricError = GetMetricForMappedMetricErrors[keyof GetMetricForMappedMetricErrors];
type GetMetricForMappedMetricResponses = {
    /**
     * Success
     */
    200: GetMetricResponse;
};
type GetMetricForMappedMetricResponse = GetMetricForMappedMetricResponses[keyof GetMetricForMappedMetricResponses];
type GetMetricIdForMappedMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    };
    query?: never;
    url: '/api/mapped-metrics/{id}/relationships/metric';
};
type GetMetricIdForMappedMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetMetricIdForMappedMetricError = GetMetricIdForMappedMetricErrors[keyof GetMetricIdForMappedMetricErrors];
type GetMetricIdForMappedMetricResponses = {
    /**
     * Success
     */
    200: GetMappedMetricMetricRelationshipResponse;
};
type GetMetricIdForMappedMetricResponse = GetMetricIdForMappedMetricResponses[keyof GetMetricIdForMappedMetricResponses];
type GetCustomMetricForMappedMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[custom-metric]'?: Array<'name' | 'created' | 'updated' | 'definition' | 'definition.aggregation_method' | 'definition.metric_groups'>;
    };
    url: '/api/mapped-metrics/{id}/custom-metric';
};
type GetCustomMetricForMappedMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCustomMetricForMappedMetricError = GetCustomMetricForMappedMetricErrors[keyof GetCustomMetricForMappedMetricErrors];
type GetCustomMetricForMappedMetricResponses = {
    /**
     * Success
     */
    200: GetCustomMetricResponse;
};
type GetCustomMetricForMappedMetricResponse = GetCustomMetricForMappedMetricResponses[keyof GetCustomMetricForMappedMetricResponses];
type GetCustomMetricIdForMappedMetricData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The type of mapping.
         */
        id: 'added_to_cart' | 'cancelled_sales' | 'ordered_product' | 'refunded_sales' | 'revenue' | 'started_checkout' | 'viewed_product';
    };
    query?: never;
    url: '/api/mapped-metrics/{id}/relationships/custom-metric';
};
type GetCustomMetricIdForMappedMetricErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCustomMetricIdForMappedMetricError = GetCustomMetricIdForMappedMetricErrors[keyof GetCustomMetricIdForMappedMetricErrors];
type GetCustomMetricIdForMappedMetricResponses = {
    /**
     * Success
     */
    200: GetMappedMetricCustomMetricRelationshipResponse;
};
type GetCustomMetricIdForMappedMetricResponse = GetCustomMetricIdForMappedMetricResponses[keyof GetCustomMetricIdForMappedMetricResponses];
type GetProfilesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[push-token]'?: Array<'created' | 'token' | 'enablement_status' | 'platform' | 'vendor' | 'background' | 'recorded_date' | 'metadata' | 'metadata.device_id' | 'metadata.klaviyo_sdk' | 'metadata.sdk_version' | 'metadata.device_model' | 'metadata.os_name' | 'metadata.os_version' | 'metadata.manufacturer' | 'metadata.app_name' | 'metadata.app_version' | 'metadata.app_build' | 'metadata.app_id' | 'metadata.environment'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`external_id`: `any`, `equals`<br>`_kx`: `equals`<br>`created`: `greater-than`, `less-than`<br>`updated`: `greater-than`, `less-than`<br>`subscriptions.email.marketing.list_suppressions.reason`: `equals`<br>`subscriptions.email.marketing.list_suppressions.timestamp`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`subscriptions.email.marketing.list_suppressions.list_id`: `equals`<br>`subscriptions.email.marketing.suppression.reason`: `equals`<br>`subscriptions.email.marketing.suppression.timestamp`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'push-tokens'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'email' | '-email' | 'id' | '-id' | 'subscriptions.email.marketing.list_suppressions.timestamp' | '-subscriptions.email.marketing.list_suppressions.timestamp' | 'subscriptions.email.marketing.suppression.timestamp' | '-subscriptions.email.marketing.suppression.timestamp' | 'updated' | '-updated';
    };
    url: '/api/profiles';
};
type GetProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfilesError = GetProfilesErrors[keyof GetProfilesErrors];
type GetProfilesResponses = {
    /**
     * Success
     */
    200: GetProfileResponseCollectionCompoundDocument;
};
type GetProfilesResponse = GetProfilesResponses[keyof GetProfilesResponses];
type CreateProfileData = {
    body: ProfileCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
    };
    url: '/api/profiles';
};
type CreateProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateProfileError = CreateProfileErrors[keyof CreateProfileErrors];
type CreateProfileResponses = {
    /**
     * Success
     */
    201: PostProfileResponse;
};
type CreateProfileResponse = CreateProfileResponses[keyof CreateProfileResponses];
type GetProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[list]'?: Array<'name' | 'created' | 'updated' | 'opt_in_process'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[push-token]'?: Array<'created' | 'token' | 'enablement_status' | 'platform' | 'vendor' | 'background' | 'recorded_date' | 'metadata' | 'metadata.device_id' | 'metadata.klaviyo_sdk' | 'metadata.sdk_version' | 'metadata.device_model' | 'metadata.os_name' | 'metadata.os_version' | 'metadata.manufacturer' | 'metadata.app_name' | 'metadata.app_version' | 'metadata.app_build' | 'metadata.app_id' | 'metadata.environment'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[segment]'?: Array<'name' | 'definition' | 'definition.condition_groups' | 'created' | 'updated' | 'is_active' | 'is_processing' | 'is_starred'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'lists' | 'push-tokens' | 'segments'>;
    };
    url: '/api/profiles/{id}';
};
type GetProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileError = GetProfileErrors[keyof GetProfileErrors];
type GetProfileResponses = {
    /**
     * Success
     */
    200: GetProfileResponseCompoundDocument;
};
type GetProfileResponse2 = GetProfileResponses[keyof GetProfileResponses];
type UpdateProfileData = {
    body: ProfilePartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this profile. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
    };
    url: '/api/profiles/{id}';
};
type UpdateProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateProfileError = UpdateProfileErrors[keyof UpdateProfileErrors];
type UpdateProfileResponses = {
    /**
     * Success
     */
    200: PatchProfileResponse;
};
type UpdateProfileResponse = UpdateProfileResponses[keyof UpdateProfileResponses];
type GetBulkImportProfilesJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile-bulk-import-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'expires_at' | 'started_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `any`, `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created_at' | '-created_at';
    };
    url: '/api/profile-bulk-import-jobs';
};
type GetBulkImportProfilesJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkImportProfilesJobsError = GetBulkImportProfilesJobsErrors[keyof GetBulkImportProfilesJobsErrors];
type GetBulkImportProfilesJobsResponses = {
    /**
     * Success
     */
    200: GetProfileImportJobResponseCollectionCompoundDocument;
};
type GetBulkImportProfilesJobsResponse = GetBulkImportProfilesJobsResponses[keyof GetBulkImportProfilesJobsResponses];
type BulkImportProfilesData = {
    body: ProfileImportJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/profile-bulk-import-jobs';
};
type BulkImportProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkImportProfilesError = BulkImportProfilesErrors[keyof BulkImportProfilesErrors];
type BulkImportProfilesResponses = {
    /**
     * Success
     */
    202: PostProfileImportJobResponse;
};
type BulkImportProfilesResponse = BulkImportProfilesResponses[keyof BulkImportProfilesResponses];
type GetBulkImportProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[list]'?: Array<'name' | 'created' | 'updated' | 'opt_in_process'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile-bulk-import-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'failed_count' | 'completed_at' | 'expires_at' | 'started_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'lists'>;
    };
    url: '/api/profile-bulk-import-jobs/{job_id}';
};
type GetBulkImportProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkImportProfilesJobError = GetBulkImportProfilesJobErrors[keyof GetBulkImportProfilesJobErrors];
type GetBulkImportProfilesJobResponses = {
    /**
     * Success
     */
    200: GetProfileImportJobResponseCompoundDocument;
};
type GetBulkImportProfilesJobResponse = GetBulkImportProfilesJobResponses[keyof GetBulkImportProfilesJobResponses];
type GetBulkSuppressProfilesJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile-suppression-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'completed_at' | 'skipped_count'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`<br>`list_id`: `equals`<br>`segment_id`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/profile-suppression-bulk-create-jobs';
};
type GetBulkSuppressProfilesJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkSuppressProfilesJobsError = GetBulkSuppressProfilesJobsErrors[keyof GetBulkSuppressProfilesJobsErrors];
type GetBulkSuppressProfilesJobsResponses = {
    /**
     * Success
     */
    200: GetBulkProfileSuppressionsCreateJobResponseCollection;
};
type GetBulkSuppressProfilesJobsResponse = GetBulkSuppressProfilesJobsResponses[keyof GetBulkSuppressProfilesJobsResponses];
type BulkSuppressProfilesData = {
    /**
     * Suppresses one or more profiles from receiving marketing. Currently, supports email only. If a profile is not found with the given email, one will be created and immediately suppressed.
     */
    body: SuppressionCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/profile-suppression-bulk-create-jobs';
};
type BulkSuppressProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkSuppressProfilesError = BulkSuppressProfilesErrors[keyof BulkSuppressProfilesErrors];
type BulkSuppressProfilesResponses = {
    /**
     * Success
     */
    202: PostBulkProfileSuppressionsCreateJobResponse;
};
type BulkSuppressProfilesResponse = BulkSuppressProfilesResponses[keyof BulkSuppressProfilesResponses];
type GetBulkSuppressProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile-suppression-bulk-create-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'completed_at' | 'skipped_count'>;
    };
    url: '/api/profile-suppression-bulk-create-jobs/{job_id}';
};
type GetBulkSuppressProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkSuppressProfilesJobError = GetBulkSuppressProfilesJobErrors[keyof GetBulkSuppressProfilesJobErrors];
type GetBulkSuppressProfilesJobResponses = {
    /**
     * Success
     */
    200: GetBulkProfileSuppressionsCreateJobResponse;
};
type GetBulkSuppressProfilesJobResponse = GetBulkSuppressProfilesJobResponses[keyof GetBulkSuppressProfilesJobResponses];
type GetBulkUnsuppressProfilesJobsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile-suppression-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'completed_at' | 'skipped_count'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`<br>`list_id`: `equals`<br>`segment_id`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created';
    };
    url: '/api/profile-suppression-bulk-delete-jobs';
};
type GetBulkUnsuppressProfilesJobsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUnsuppressProfilesJobsError = GetBulkUnsuppressProfilesJobsErrors[keyof GetBulkUnsuppressProfilesJobsErrors];
type GetBulkUnsuppressProfilesJobsResponses = {
    /**
     * Success
     */
    200: GetBulkProfileSuppressionsRemoveJobResponseCollection;
};
type GetBulkUnsuppressProfilesJobsResponse = GetBulkUnsuppressProfilesJobsResponses[keyof GetBulkUnsuppressProfilesJobsResponses];
type BulkUnsuppressProfilesData = {
    /**
     * Unsuppresses one or more profiles from receiving marketing. Currently, supports email only. If a profile is not
     * found with the given email, no action will be taken.
     */
    body: SuppressionDeleteJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/profile-suppression-bulk-delete-jobs';
};
type BulkUnsuppressProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkUnsuppressProfilesError = BulkUnsuppressProfilesErrors[keyof BulkUnsuppressProfilesErrors];
type BulkUnsuppressProfilesResponses = {
    /**
     * Success
     */
    202: PostBulkProfileSuppressionsRemoveJobResponse;
};
type BulkUnsuppressProfilesResponse = BulkUnsuppressProfilesResponses[keyof BulkUnsuppressProfilesResponses];
type GetBulkUnsuppressProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * ID of the job to retrieve.
         */
        job_id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile-suppression-bulk-delete-job]'?: Array<'status' | 'created_at' | 'total_count' | 'completed_count' | 'completed_at' | 'skipped_count'>;
    };
    url: '/api/profile-suppression-bulk-delete-jobs/{job_id}';
};
type GetBulkUnsuppressProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetBulkUnsuppressProfilesJobError = GetBulkUnsuppressProfilesJobErrors[keyof GetBulkUnsuppressProfilesJobErrors];
type GetBulkUnsuppressProfilesJobResponses = {
    /**
     * Success
     */
    200: GetBulkProfileSuppressionsRemoveJobResponse;
};
type GetBulkUnsuppressProfilesJobResponse = GetBulkUnsuppressProfilesJobResponses[keyof GetBulkUnsuppressProfilesJobResponses];
type GetPushTokensData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[push-token]'?: Array<'created' | 'token' | 'enablement_status' | 'platform' | 'vendor' | 'background' | 'recorded_date' | 'metadata' | 'metadata.device_id' | 'metadata.klaviyo_sdk' | 'metadata.sdk_version' | 'metadata.device_model' | 'metadata.os_name' | 'metadata.os_version' | 'metadata.manufacturer' | 'metadata.app_name' | 'metadata.app_version' | 'metadata.app_build' | 'metadata.app_id' | 'metadata.environment'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `equals`<br>`profile.id`: `equals`<br>`enablement_status`: `equals`<br>`platform`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'profile'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
    };
    url: '/api/push-tokens';
};
type GetPushTokensErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetPushTokensError = GetPushTokensErrors[keyof GetPushTokensErrors];
type GetPushTokensResponses = {
    /**
     * Success
     */
    200: GetPushTokenResponseCollectionCompoundDocument;
};
type GetPushTokensResponse = GetPushTokensResponses[keyof GetPushTokensResponses];
type CreatePushTokenData = {
    body: PushTokenCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/push-tokens';
};
type CreatePushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreatePushTokenError = CreatePushTokenErrors[keyof CreatePushTokenErrors];
type CreatePushTokenResponses = {
    /**
     * Success
     */
    202: unknown;
};
type DeletePushTokenData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The value of the push token to delete
         */
        id: string;
    };
    query?: never;
    url: '/api/push-tokens/{id}';
};
type DeletePushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeletePushTokenError = DeletePushTokenErrors[keyof DeletePushTokenErrors];
type DeletePushTokenResponses = {
    /**
     * Success
     */
    204: void;
};
type DeletePushTokenResponse = DeletePushTokenResponses[keyof DeletePushTokenResponses];
type GetPushTokenData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The value of the push token
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[push-token]'?: Array<'created' | 'token' | 'enablement_status' | 'platform' | 'vendor' | 'background' | 'recorded_date' | 'metadata' | 'metadata.device_id' | 'metadata.klaviyo_sdk' | 'metadata.sdk_version' | 'metadata.device_model' | 'metadata.os_name' | 'metadata.os_version' | 'metadata.manufacturer' | 'metadata.app_name' | 'metadata.app_version' | 'metadata.app_build' | 'metadata.app_id' | 'metadata.environment'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'profile'>;
    };
    url: '/api/push-tokens/{id}';
};
type GetPushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetPushTokenError = GetPushTokenErrors[keyof GetPushTokenErrors];
type GetPushTokenResponses = {
    /**
     * Success
     */
    200: GetPushTokenResponseCompoundDocument;
};
type GetPushTokenResponse = GetPushTokenResponses[keyof GetPushTokenResponses];
type CreateOrUpdateProfileData = {
    body: ProfileUpsertQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
    };
    url: '/api/profile-import';
};
type CreateOrUpdateProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateOrUpdateProfileError = CreateOrUpdateProfileErrors[keyof CreateOrUpdateProfileErrors];
type CreateOrUpdateProfileResponses = {
    /**
     * Profile Updated Successfully
     */
    200: PostProfileResponse;
    /**
     * Profile Created Successfully
     */
    201: PostProfileResponse;
};
type CreateOrUpdateProfileResponse = CreateOrUpdateProfileResponses[keyof CreateOrUpdateProfileResponses];
type MergeProfilesData = {
    body: ProfileMergeQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/profile-merge';
};
type MergeProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type MergeProfilesError = MergeProfilesErrors[keyof MergeProfilesErrors];
type MergeProfilesResponses = {
    /**
     * Success
     */
    201: PostProfileMergeResponse;
};
type MergeProfilesResponse = MergeProfilesResponses[keyof MergeProfilesResponses];
type BulkSubscribeProfilesData = {
    /**
     * Subscribes one or more profiles to marketing. Currently, supports email and SMS only. All profiles will be added to the provided list. Either email or phone number is required. Both may be specified to subscribe to both channels.
     * If a profile cannot be found matching the given identifier(s), a new profile will be created and then subscribed.
     */
    body: SubscriptionCreateJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/profile-subscription-bulk-create-jobs';
};
type BulkSubscribeProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkSubscribeProfilesError = BulkSubscribeProfilesErrors[keyof BulkSubscribeProfilesErrors];
type BulkSubscribeProfilesResponses = {
    /**
     * Success
     */
    202: unknown;
};
type BulkUnsubscribeProfilesData = {
    /**
     * Unsubscribes one or more profiles from marketing. Currently, supports email and SMS only. All profiles will be removed from the provided list.
     * Either email or phone number is required. If a profile cannot be found matching the given identifier(s), a new profile will be created and then unsubscribed.
     */
    body: SubscriptionDeleteJobCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/profile-subscription-bulk-delete-jobs';
};
type BulkUnsubscribeProfilesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkUnsubscribeProfilesError = BulkUnsubscribeProfilesErrors[keyof BulkUnsubscribeProfilesErrors];
type BulkUnsubscribeProfilesResponses = {
    /**
     * Success
     */
    202: unknown;
};
type GetPushTokensForProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[push-token]'?: Array<'created' | 'token' | 'enablement_status' | 'platform' | 'vendor' | 'background' | 'recorded_date' | 'metadata' | 'metadata.device_id' | 'metadata.klaviyo_sdk' | 'metadata.sdk_version' | 'metadata.device_model' | 'metadata.os_name' | 'metadata.os_version' | 'metadata.manufacturer' | 'metadata.app_name' | 'metadata.app_version' | 'metadata.app_build' | 'metadata.app_id' | 'metadata.environment'>;
    };
    url: '/api/profiles/{id}/push-tokens';
};
type GetPushTokensForProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetPushTokensForProfileError = GetPushTokensForProfileErrors[keyof GetPushTokensForProfileErrors];
type GetPushTokensForProfileResponses = {
    /**
     * Success
     */
    200: GetPushTokenResponseCollection;
};
type GetPushTokensForProfileResponse = GetPushTokensForProfileResponses[keyof GetPushTokensForProfileResponses];
type GetPushTokenIdsForProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/profiles/{id}/relationships/push-tokens';
};
type GetPushTokenIdsForProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetPushTokenIdsForProfileError = GetPushTokenIdsForProfileErrors[keyof GetPushTokenIdsForProfileErrors];
type GetPushTokenIdsForProfileResponses = {
    /**
     * Success
     */
    200: GetProfilePushTokensRelationshipsResponseCollection;
};
type GetPushTokenIdsForProfileResponse = GetPushTokenIdsForProfileResponses[keyof GetPushTokenIdsForProfileResponses];
type GetListsForProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[list]'?: Array<'name' | 'created' | 'updated' | 'opt_in_process'>;
    };
    url: '/api/profiles/{id}/lists';
};
type GetListsForProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListsForProfileError = GetListsForProfileErrors[keyof GetListsForProfileErrors];
type GetListsForProfileResponses = {
    /**
     * Success
     */
    200: GetListResponseCollection;
};
type GetListsForProfileResponse = GetListsForProfileResponses[keyof GetListsForProfileResponses];
type GetListIdsForProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/profiles/{id}/relationships/lists';
};
type GetListIdsForProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListIdsForProfileError = GetListIdsForProfileErrors[keyof GetListIdsForProfileErrors];
type GetListIdsForProfileResponses = {
    /**
     * Success
     */
    200: GetProfileListsRelationshipsResponseCollection;
};
type GetListIdsForProfileResponse = GetListIdsForProfileResponses[keyof GetListIdsForProfileResponses];
type GetSegmentsForProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[segment]'?: Array<'name' | 'definition' | 'definition.condition_groups' | 'created' | 'updated' | 'is_active' | 'is_processing' | 'is_starred'>;
    };
    url: '/api/profiles/{id}/segments';
};
type GetSegmentsForProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetSegmentsForProfileError = GetSegmentsForProfileErrors[keyof GetSegmentsForProfileErrors];
type GetSegmentsForProfileResponses = {
    /**
     * Success
     */
    200: GetSegmentResponseCollection;
};
type GetSegmentsForProfileResponse = GetSegmentsForProfileResponses[keyof GetSegmentsForProfileResponses];
type GetSegmentIdsForProfileData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/profiles/{id}/relationships/segments';
};
type GetSegmentIdsForProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetSegmentIdsForProfileError = GetSegmentIdsForProfileErrors[keyof GetSegmentIdsForProfileErrors];
type GetSegmentIdsForProfileResponses = {
    /**
     * Success
     */
    200: GetProfileSegmentsRelationshipsResponseCollection;
};
type GetSegmentIdsForProfileResponse = GetSegmentIdsForProfileResponses[keyof GetSegmentIdsForProfileResponses];
type GetListForBulkImportProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[list]'?: Array<'name' | 'created' | 'updated' | 'opt_in_process'>;
    };
    url: '/api/profile-bulk-import-jobs/{id}/lists';
};
type GetListForBulkImportProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListForBulkImportProfilesJobError = GetListForBulkImportProfilesJobErrors[keyof GetListForBulkImportProfilesJobErrors];
type GetListForBulkImportProfilesJobResponses = {
    /**
     * Success
     */
    200: GetListResponseCollection;
};
type GetListForBulkImportProfilesJobResponse = GetListForBulkImportProfilesJobResponses[keyof GetListForBulkImportProfilesJobResponses];
type GetListIdsForBulkImportProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/profile-bulk-import-jobs/{id}/relationships/lists';
};
type GetListIdsForBulkImportProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListIdsForBulkImportProfilesJobError = GetListIdsForBulkImportProfilesJobErrors[keyof GetListIdsForBulkImportProfilesJobErrors];
type GetListIdsForBulkImportProfilesJobResponses = {
    /**
     * Success
     */
    200: GetProfileBulkImportJobListsRelationshipsResponseCollection;
};
type GetListIdsForBulkImportProfilesJobResponse = GetListIdsForBulkImportProfilesJobResponses[keyof GetListIdsForBulkImportProfilesJobResponses];
type GetProfilesForBulkImportProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
    };
    url: '/api/profile-bulk-import-jobs/{id}/profiles';
};
type GetProfilesForBulkImportProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfilesForBulkImportProfilesJobError = GetProfilesForBulkImportProfilesJobErrors[keyof GetProfilesForBulkImportProfilesJobErrors];
type GetProfilesForBulkImportProfilesJobResponses = {
    /**
     * Success
     */
    200: GetProfileResponseCollection;
};
type GetProfilesForBulkImportProfilesJobResponse = GetProfilesForBulkImportProfilesJobResponses[keyof GetProfilesForBulkImportProfilesJobResponses];
type GetProfileIdsForBulkImportProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
    };
    url: '/api/profile-bulk-import-jobs/{id}/relationships/profiles';
};
type GetProfileIdsForBulkImportProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileIdsForBulkImportProfilesJobError = GetProfileIdsForBulkImportProfilesJobErrors[keyof GetProfileIdsForBulkImportProfilesJobErrors];
type GetProfileIdsForBulkImportProfilesJobResponses = {
    /**
     * Success
     */
    200: GetProfileBulkImportJobProfilesRelationshipsResponseCollection;
};
type GetProfileIdsForBulkImportProfilesJobResponse = GetProfileIdsForBulkImportProfilesJobResponses[keyof GetProfileIdsForBulkImportProfilesJobResponses];
type GetErrorsForBulkImportProfilesJobData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[import-error]'?: Array<'code' | 'title' | 'detail' | 'source' | 'source.pointer' | 'original_payload'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
    };
    url: '/api/profile-bulk-import-jobs/{id}/import-errors';
};
type GetErrorsForBulkImportProfilesJobErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetErrorsForBulkImportProfilesJobError = GetErrorsForBulkImportProfilesJobErrors[keyof GetErrorsForBulkImportProfilesJobErrors];
type GetErrorsForBulkImportProfilesJobResponses = {
    /**
     * Success
     */
    200: GetImportErrorResponseCollection;
};
type GetErrorsForBulkImportProfilesJobResponse = GetErrorsForBulkImportProfilesJobResponses[keyof GetErrorsForBulkImportProfilesJobResponses];
type GetProfileForPushTokenData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The value of the push token
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
    };
    url: '/api/push-tokens/{id}/profile';
};
type GetProfileForPushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileForPushTokenError = GetProfileForPushTokenErrors[keyof GetProfileForPushTokenErrors];
type GetProfileForPushTokenResponses = {
    /**
     * Success
     */
    200: GetProfileResponse;
};
type GetProfileForPushTokenResponse = GetProfileForPushTokenResponses[keyof GetProfileForPushTokenResponses];
type GetProfileIdForPushTokenData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The value of the push token
         */
        id: string;
    };
    query?: never;
    url: '/api/push-tokens/{id}/relationships/profile';
};
type GetProfileIdForPushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileIdForPushTokenError = GetProfileIdForPushTokenErrors[keyof GetProfileIdForPushTokenErrors];
type GetProfileIdForPushTokenResponses = {
    /**
     * Success
     */
    200: GetPushTokenProfileRelationshipResponse;
};
type GetProfileIdForPushTokenResponse = GetProfileIdForPushTokenResponses[keyof GetProfileIdForPushTokenResponses];
type QueryCampaignValuesData = {
    body: CampaignValuesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        page_cursor?: string;
    };
    url: '/api/campaign-values-reports';
};
type QueryCampaignValuesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QueryCampaignValuesError = QueryCampaignValuesErrors[keyof QueryCampaignValuesErrors];
type QueryCampaignValuesResponses = {
    /**
     * Success
     */
    200: PostCampaignValuesResponseDto;
};
type QueryCampaignValuesResponse = QueryCampaignValuesResponses[keyof QueryCampaignValuesResponses];
type QueryFlowValuesData = {
    body: FlowValuesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        page_cursor?: string;
    };
    url: '/api/flow-values-reports';
};
type QueryFlowValuesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QueryFlowValuesError = QueryFlowValuesErrors[keyof QueryFlowValuesErrors];
type QueryFlowValuesResponses = {
    /**
     * Success
     */
    200: PostFlowValuesResponseDto;
};
type QueryFlowValuesResponse = QueryFlowValuesResponses[keyof QueryFlowValuesResponses];
type QueryFlowSeriesData = {
    body: FlowSeriesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        page_cursor?: string;
    };
    url: '/api/flow-series-reports';
};
type QueryFlowSeriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QueryFlowSeriesError = QueryFlowSeriesErrors[keyof QueryFlowSeriesErrors];
type QueryFlowSeriesResponses = {
    /**
     * Success
     */
    200: PostFlowSeriesResponseDto;
};
type QueryFlowSeriesResponse = QueryFlowSeriesResponses[keyof QueryFlowSeriesResponses];
type QueryFormValuesData = {
    body: FormValuesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/form-values-reports';
};
type QueryFormValuesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QueryFormValuesError = QueryFormValuesErrors[keyof QueryFormValuesErrors];
type QueryFormValuesResponses = {
    /**
     * Success
     */
    200: PostFormValuesResponseDto;
};
type QueryFormValuesResponse = QueryFormValuesResponses[keyof QueryFormValuesResponses];
type QueryFormSeriesData = {
    body: FormSeriesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/form-series-reports';
};
type QueryFormSeriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QueryFormSeriesError = QueryFormSeriesErrors[keyof QueryFormSeriesErrors];
type QueryFormSeriesResponses = {
    /**
     * Success
     */
    200: PostFormSeriesResponseDto;
};
type QueryFormSeriesResponse = QueryFormSeriesResponses[keyof QueryFormSeriesResponses];
type QuerySegmentValuesData = {
    body: SegmentValuesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/segment-values-reports';
};
type QuerySegmentValuesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QuerySegmentValuesError = QuerySegmentValuesErrors[keyof QuerySegmentValuesErrors];
type QuerySegmentValuesResponses = {
    /**
     * Success
     */
    200: PostSegmentValuesResponseDto;
};
type QuerySegmentValuesResponse = QuerySegmentValuesResponses[keyof QuerySegmentValuesResponses];
type QuerySegmentSeriesData = {
    body: SegmentSeriesRequestDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/segment-series-reports';
};
type QuerySegmentSeriesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type QuerySegmentSeriesError = QuerySegmentSeriesErrors[keyof QuerySegmentSeriesErrors];
type QuerySegmentSeriesResponses = {
    /**
     * Success
     */
    200: PostSegmentSeriesResponseDto;
};
type QuerySegmentSeriesResponse = QuerySegmentSeriesResponses[keyof QuerySegmentSeriesResponses];
type GetReviewsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[event]'?: Array<'timestamp' | 'event_properties' | 'datetime' | 'uuid'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[review]'?: Array<'email' | 'status' | 'status.value' | 'status.rejection_reason' | 'status.rejection_reason.reason' | 'status.rejection_reason.status_explanation' | 'verified' | 'review_type' | 'created' | 'updated' | 'images' | 'product' | 'product.url' | 'product.name' | 'product.image_url' | 'product.external_id' | 'rating' | 'author' | 'content' | 'title' | 'smart_quote' | 'public_reply' | 'public_reply.content' | 'public_reply.author' | 'public_reply.updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`created`: `greater-or-equal`, `less-or-equal`<br>`rating`: `any`, `equals`, `greater-or-equal`, `less-or-equal`<br>`id`: `any`, `equals`<br>`item.id`: `any`, `equals`<br>`content`: `contains`<br>`status`: `equals`<br>`review_type`: `equals`<br>`verified`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'events'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'rating' | '-rating' | 'updated' | '-updated';
    };
    url: '/api/reviews';
};
type GetReviewsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetReviewsError = GetReviewsErrors[keyof GetReviewsErrors];
type GetReviewsResponses = {
    /**
     * Success
     */
    200: GetReviewResponseDtoCollectionCompoundDocument;
};
type GetReviewsResponse = GetReviewsResponses[keyof GetReviewsResponses];
type GetReviewData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the review
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[event]'?: Array<'timestamp' | 'event_properties' | 'datetime' | 'uuid'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[review]'?: Array<'email' | 'status' | 'status.value' | 'status.rejection_reason' | 'status.rejection_reason.reason' | 'status.rejection_reason.status_explanation' | 'verified' | 'review_type' | 'created' | 'updated' | 'images' | 'product' | 'product.url' | 'product.name' | 'product.image_url' | 'product.external_id' | 'rating' | 'author' | 'content' | 'title' | 'smart_quote' | 'public_reply' | 'public_reply.content' | 'public_reply.author' | 'public_reply.updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'events'>;
    };
    url: '/api/reviews/{id}';
};
type GetReviewErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetReviewError = GetReviewErrors[keyof GetReviewErrors];
type GetReviewResponses = {
    /**
     * Success
     */
    200: GetReviewResponseDtoCompoundDocument;
};
type GetReviewResponse = GetReviewResponses[keyof GetReviewResponses];
type UpdateReviewData = {
    /**
     * DTO for updating reviews
     */
    body: ReviewPatchQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The id of the review (review ID).
         */
        id: string;
    };
    query?: never;
    url: '/api/reviews/{id}';
};
type UpdateReviewErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateReviewError = UpdateReviewErrors[keyof UpdateReviewErrors];
type UpdateReviewResponses = {
    /**
     * Success
     */
    200: PatchReviewResponseDto;
};
type UpdateReviewResponse = UpdateReviewResponses[keyof UpdateReviewResponses];
type GetSegmentsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[segment]'?: Array<'name' | 'definition' | 'definition.condition_groups' | 'created' | 'updated' | 'is_active' | 'is_processing' | 'is_starred'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `any`, `equals`<br>`id`: `any`, `equals`<br>`created`: `greater-than`<br>`updated`: `greater-than`<br>`is_active`: `any`, `equals`<br>`is_starred`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-triggers' | 'tags'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/segments';
};
type GetSegmentsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetSegmentsError = GetSegmentsErrors[keyof GetSegmentsErrors];
type GetSegmentsResponses = {
    /**
     * Success
     */
    200: GetSegmentListResponseCollectionCompoundDocument;
};
type GetSegmentsResponse = GetSegmentsResponses[keyof GetSegmentsResponses];
type CreateSegmentData = {
    body: SegmentCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/segments';
};
type CreateSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateSegmentError = CreateSegmentErrors[keyof CreateSegmentErrors];
type CreateSegmentResponses = {
    /**
     * Success
     */
    201: PostSegmentCreateResponse;
};
type CreateSegmentResponse = CreateSegmentResponses[keyof CreateSegmentResponses];
type DeleteSegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/segments/{id}';
};
type DeleteSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteSegmentError = DeleteSegmentErrors[keyof DeleteSegmentErrors];
type DeleteSegmentResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteSegmentResponse = DeleteSegmentResponses[keyof DeleteSegmentResponses];
type GetSegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'profile_count'
         */
        'additional-fields[segment]'?: Array<'profile_count'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[segment]'?: Array<'name' | 'definition' | 'definition.condition_groups' | 'created' | 'updated' | 'is_active' | 'is_processing' | 'is_starred' | 'profile_count'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'flow-triggers' | 'tags'>;
    };
    url: '/api/segments/{id}';
};
type GetSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetSegmentError = GetSegmentErrors[keyof GetSegmentErrors];
type GetSegmentResponses = {
    /**
     * Success
     */
    200: GetSegmentRetrieveResponseCompoundDocument;
};
type GetSegmentResponse = GetSegmentResponses[keyof GetSegmentResponses];
type UpdateSegmentData = {
    body: SegmentPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/segments/{id}';
};
type UpdateSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateSegmentError = UpdateSegmentErrors[keyof UpdateSegmentErrors];
type UpdateSegmentResponses = {
    /**
     * Success
     */
    200: PatchSegmentPartialUpdateResponse;
};
type UpdateSegmentResponse = UpdateSegmentResponses[keyof UpdateSegmentResponses];
type GetTagsForSegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
    };
    url: '/api/segments/{id}/tags';
};
type GetTagsForSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagsForSegmentError = GetTagsForSegmentErrors[keyof GetTagsForSegmentErrors];
type GetTagsForSegmentResponses = {
    /**
     * Success
     */
    200: GetTagResponseCollection;
};
type GetTagsForSegmentResponse = GetTagsForSegmentResponses[keyof GetTagsForSegmentResponses];
type GetTagIdsForSegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        id: string;
    };
    query?: never;
    url: '/api/segments/{id}/relationships/tags';
};
type GetTagIdsForSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagIdsForSegmentError = GetTagIdsForSegmentErrors[keyof GetTagIdsForSegmentErrors];
type GetTagIdsForSegmentResponses = {
    /**
     * Success
     */
    200: GetSegmentTagsRelationshipsResponseCollection;
};
type GetTagIdsForSegmentResponse = GetTagIdsForSegmentResponses[keyof GetTagIdsForSegmentResponses];
type GetProfilesForSegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this segment. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'
         */
        'additional-fields[profile]'?: Array<'subscriptions' | 'predictive_analytics'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[profile]'?: Array<'email' | 'phone_number' | 'external_id' | 'first_name' | 'last_name' | 'organization' | 'locale' | 'title' | 'image' | 'created' | 'updated' | 'last_event_date' | 'location' | 'location.address1' | 'location.address2' | 'location.city' | 'location.country' | 'location.latitude' | 'location.longitude' | 'location.region' | 'location.zip' | 'location.timezone' | 'location.ip' | 'properties' | 'joined_group_at' | 'subscriptions' | 'subscriptions.email' | 'subscriptions.email.marketing' | 'subscriptions.email.marketing.can_receive_email_marketing' | 'subscriptions.email.marketing.consent' | 'subscriptions.email.marketing.consent_timestamp' | 'subscriptions.email.marketing.last_updated' | 'subscriptions.email.marketing.method' | 'subscriptions.email.marketing.method_detail' | 'subscriptions.email.marketing.custom_method_detail' | 'subscriptions.email.marketing.double_optin' | 'subscriptions.email.marketing.suppression' | 'subscriptions.email.marketing.list_suppressions' | 'subscriptions.sms' | 'subscriptions.sms.marketing' | 'subscriptions.sms.marketing.can_receive_sms_marketing' | 'subscriptions.sms.marketing.consent' | 'subscriptions.sms.marketing.consent_timestamp' | 'subscriptions.sms.marketing.method' | 'subscriptions.sms.marketing.method_detail' | 'subscriptions.sms.marketing.last_updated' | 'subscriptions.sms.transactional' | 'subscriptions.sms.transactional.can_receive_sms_transactional' | 'subscriptions.sms.transactional.consent' | 'subscriptions.sms.transactional.consent_timestamp' | 'subscriptions.sms.transactional.method' | 'subscriptions.sms.transactional.method_detail' | 'subscriptions.sms.transactional.last_updated' | 'subscriptions.mobile_push' | 'subscriptions.mobile_push.marketing' | 'subscriptions.mobile_push.marketing.can_receive_push_marketing' | 'subscriptions.mobile_push.marketing.consent' | 'subscriptions.mobile_push.marketing.consent_timestamp' | 'subscriptions.whatsapp' | 'subscriptions.whatsapp.marketing' | 'subscriptions.whatsapp.marketing.consent' | 'subscriptions.whatsapp.marketing.consent_timestamp' | 'subscriptions.whatsapp.marketing.last_updated' | 'subscriptions.whatsapp.marketing.created_timestamp' | 'subscriptions.whatsapp.marketing.metadata' | 'subscriptions.whatsapp.marketing.can_receive' | 'subscriptions.whatsapp.marketing.valid_until' | 'subscriptions.whatsapp.marketing.phone_number' | 'subscriptions.whatsapp.transactional' | 'subscriptions.whatsapp.transactional.consent' | 'subscriptions.whatsapp.transactional.consent_timestamp' | 'subscriptions.whatsapp.transactional.last_updated' | 'subscriptions.whatsapp.transactional.created_timestamp' | 'subscriptions.whatsapp.transactional.metadata' | 'subscriptions.whatsapp.transactional.can_receive' | 'subscriptions.whatsapp.transactional.valid_until' | 'subscriptions.whatsapp.transactional.phone_number' | 'subscriptions.whatsapp.conversational' | 'subscriptions.whatsapp.conversational.consent' | 'subscriptions.whatsapp.conversational.consent_timestamp' | 'subscriptions.whatsapp.conversational.last_updated' | 'subscriptions.whatsapp.conversational.created_timestamp' | 'subscriptions.whatsapp.conversational.metadata' | 'subscriptions.whatsapp.conversational.can_receive' | 'subscriptions.whatsapp.conversational.valid_until' | 'subscriptions.whatsapp.conversational.phone_number' | 'predictive_analytics' | 'predictive_analytics.historic_clv' | 'predictive_analytics.predicted_clv' | 'predictive_analytics.total_clv' | 'predictive_analytics.historic_number_of_orders' | 'predictive_analytics.predicted_number_of_orders' | 'predictive_analytics.average_days_between_orders' | 'predictive_analytics.average_order_value' | 'predictive_analytics.churn_probability' | 'predictive_analytics.expected_date_of_next_order' | 'predictive_analytics.ranked_channel_affinity'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`profile_id`: `any`, `equals`<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`push_token`: `any`, `equals`<br>`_kx`: `equals`<br>`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'joined_group_at' | '-joined_group_at';
    };
    url: '/api/segments/{id}/profiles';
};
type GetProfilesForSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfilesForSegmentError = GetProfilesForSegmentErrors[keyof GetProfilesForSegmentErrors];
type GetProfilesForSegmentResponses = {
    /**
     * Success
     */
    200: GetSegmentMemberResponseCollection;
};
type GetProfilesForSegmentResponse = GetProfilesForSegmentResponses[keyof GetProfilesForSegmentResponses];
type GetProfileIdsForSegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this segment. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`profile_id`: `any`, `equals`<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`push_token`: `any`, `equals`<br>`_kx`: `equals`<br>`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'joined_group_at' | '-joined_group_at';
    };
    url: '/api/segments/{id}/relationships/profiles';
};
type GetProfileIdsForSegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetProfileIdsForSegmentError = GetProfileIdsForSegmentErrors[keyof GetProfileIdsForSegmentErrors];
type GetProfileIdsForSegmentResponses = {
    /**
     * Success
     */
    200: GetSegmentProfilesRelationshipsResponseCollection;
};
type GetProfileIdsForSegmentResponse = GetProfileIdsForSegmentResponses[keyof GetProfileIdsForSegmentResponses];
type GetFlowsTriggeredBySegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this segment. Generated by Klaviyo.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[flow]'?: Array<'name' | 'status' | 'archived' | 'created' | 'updated' | 'trigger_type'>;
    };
    url: '/api/segments/{id}/flow-triggers';
};
type GetFlowsTriggeredBySegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowsTriggeredBySegmentError = GetFlowsTriggeredBySegmentErrors[keyof GetFlowsTriggeredBySegmentErrors];
type GetFlowsTriggeredBySegmentResponses = {
    /**
     * Success
     */
    200: GetFlowResponseCollection;
};
type GetFlowsTriggeredBySegmentResponse = GetFlowsTriggeredBySegmentResponses[keyof GetFlowsTriggeredBySegmentResponses];
type GetIdsForFlowsTriggeredBySegmentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * Primary key that uniquely identifies this segment. Generated by Klaviyo.
         */
        id: string;
    };
    query?: never;
    url: '/api/segments/{id}/relationships/flow-triggers';
};
type GetIdsForFlowsTriggeredBySegmentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetIdsForFlowsTriggeredBySegmentError = GetIdsForFlowsTriggeredBySegmentErrors[keyof GetIdsForFlowsTriggeredBySegmentErrors];
type GetIdsForFlowsTriggeredBySegmentResponses = {
    /**
     * Success
     */
    200: GetSegmentFlowTriggersRelationshipsResponseCollection;
};
type GetIdsForFlowsTriggeredBySegmentResponse = GetIdsForFlowsTriggeredBySegmentResponses[keyof GetIdsForFlowsTriggeredBySegmentResponses];
type GetTagsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag-group]'?: Array<'name' | 'exclusive' | 'default'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'tag-group'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'id' | '-id' | 'name' | '-name';
    };
    url: '/api/tags';
};
type GetTagsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagsError = GetTagsErrors[keyof GetTagsErrors];
type GetTagsResponses = {
    /**
     * Success
     */
    200: GetTagResponseCollectionCompoundDocument;
};
type GetTagsResponse = GetTagsResponses[keyof GetTagsResponses];
type CreateTagData = {
    body: TagCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/tags';
};
type CreateTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateTagError = CreateTagErrors[keyof CreateTagErrors];
type CreateTagResponses = {
    /**
     * Success
     */
    201: PostTagResponse;
};
type CreateTagResponse = CreateTagResponses[keyof CreateTagResponses];
type DeleteTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}';
};
type DeleteTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteTagError = DeleteTagErrors[keyof DeleteTagErrors];
type DeleteTagResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteTagResponse = DeleteTagResponses[keyof DeleteTagResponses];
type GetTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag-group]'?: Array<'name' | 'exclusive' | 'default'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'tag-group'>;
    };
    url: '/api/tags/{id}';
};
type GetTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagError = GetTagErrors[keyof GetTagErrors];
type GetTagResponses = {
    /**
     * Success
     */
    200: GetTagResponseCompoundDocument;
};
type GetTagResponse = GetTagResponses[keyof GetTagResponses];
type UpdateTagData = {
    body: TagUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}';
};
type UpdateTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateTagError = UpdateTagErrors[keyof UpdateTagErrors];
type UpdateTagResponses = {
    /**
     * Success
     */
    204: void;
};
type UpdateTagResponse = UpdateTagResponses[keyof UpdateTagResponses];
type GetTagGroupsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag-group]'?: Array<'name' | 'exclusive' | 'default'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`<br>`exclusive`: `equals`<br>`default`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'id' | '-id' | 'name' | '-name';
    };
    url: '/api/tag-groups';
};
type GetTagGroupsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagGroupsError = GetTagGroupsErrors[keyof GetTagGroupsErrors];
type GetTagGroupsResponses = {
    /**
     * Success
     */
    200: GetTagGroupResponseCollection;
};
type GetTagGroupsResponse = GetTagGroupsResponses[keyof GetTagGroupsResponses];
type CreateTagGroupData = {
    body: TagGroupCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/tag-groups';
};
type CreateTagGroupErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateTagGroupError = CreateTagGroupErrors[keyof CreateTagGroupErrors];
type CreateTagGroupResponses = {
    /**
     * Success
     */
    201: PostTagGroupResponse;
};
type CreateTagGroupResponse = CreateTagGroupResponses[keyof CreateTagGroupResponses];
type DeleteTagGroupData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag Group ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tag-groups/{id}';
};
type DeleteTagGroupErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteTagGroupError = DeleteTagGroupErrors[keyof DeleteTagGroupErrors];
type DeleteTagGroupResponses = {
    /**
     * Success
     */
    200: DeleteTagGroupResponse;
};
type DeleteTagGroupResponse2 = DeleteTagGroupResponses[keyof DeleteTagGroupResponses];
type GetTagGroupData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag Group ID
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag-group]'?: Array<'name' | 'exclusive' | 'default'>;
    };
    url: '/api/tag-groups/{id}';
};
type GetTagGroupErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagGroupError = GetTagGroupErrors[keyof GetTagGroupErrors];
type GetTagGroupResponses = {
    /**
     * Success
     */
    200: GetTagGroupResponse;
};
type GetTagGroupResponse2 = GetTagGroupResponses[keyof GetTagGroupResponses];
type UpdateTagGroupData = {
    body: TagGroupUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag Group ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tag-groups/{id}';
};
type UpdateTagGroupErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateTagGroupError = UpdateTagGroupErrors[keyof UpdateTagGroupErrors];
type UpdateTagGroupResponses = {
    /**
     * Success
     */
    200: PatchTagGroupResponse;
};
type UpdateTagGroupResponse = UpdateTagGroupResponses[keyof UpdateTagGroupResponses];
type RemoveTagFromFlowsData = {
    body: TagFlowOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/flows';
};
type RemoveTagFromFlowsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveTagFromFlowsError = RemoveTagFromFlowsErrors[keyof RemoveTagFromFlowsErrors];
type RemoveTagFromFlowsResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveTagFromFlowsResponse = RemoveTagFromFlowsResponses[keyof RemoveTagFromFlowsResponses];
type GetFlowIdsForTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/flows';
};
type GetFlowIdsForTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetFlowIdsForTagError = GetFlowIdsForTagErrors[keyof GetFlowIdsForTagErrors];
type GetFlowIdsForTagResponses = {
    /**
     * Success
     */
    200: GetTagFlowRelationshipsResponseCollection;
};
type GetFlowIdsForTagResponse = GetFlowIdsForTagResponses[keyof GetFlowIdsForTagResponses];
type TagFlowsData = {
    body: TagFlowOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/flows';
};
type TagFlowsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type TagFlowsError = TagFlowsErrors[keyof TagFlowsErrors];
type TagFlowsResponses = {
    /**
     * Success
     */
    204: void;
};
type TagFlowsResponse = TagFlowsResponses[keyof TagFlowsResponses];
type RemoveTagFromCampaignsData = {
    body: TagCampaignOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/campaigns';
};
type RemoveTagFromCampaignsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveTagFromCampaignsError = RemoveTagFromCampaignsErrors[keyof RemoveTagFromCampaignsErrors];
type RemoveTagFromCampaignsResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveTagFromCampaignsResponse = RemoveTagFromCampaignsResponses[keyof RemoveTagFromCampaignsResponses];
type GetCampaignIdsForTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/campaigns';
};
type GetCampaignIdsForTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetCampaignIdsForTagError = GetCampaignIdsForTagErrors[keyof GetCampaignIdsForTagErrors];
type GetCampaignIdsForTagResponses = {
    /**
     * Success
     */
    200: GetTagCampaignRelationshipsResponseCollection;
};
type GetCampaignIdsForTagResponse = GetCampaignIdsForTagResponses[keyof GetCampaignIdsForTagResponses];
type TagCampaignsData = {
    body: TagCampaignOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/campaigns';
};
type TagCampaignsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type TagCampaignsError = TagCampaignsErrors[keyof TagCampaignsErrors];
type TagCampaignsResponses = {
    /**
     * Success
     */
    204: void;
};
type TagCampaignsResponse = TagCampaignsResponses[keyof TagCampaignsResponses];
type RemoveTagFromListsData = {
    body: TagListOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/lists';
};
type RemoveTagFromListsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveTagFromListsError = RemoveTagFromListsErrors[keyof RemoveTagFromListsErrors];
type RemoveTagFromListsResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveTagFromListsResponse = RemoveTagFromListsResponses[keyof RemoveTagFromListsResponses];
type GetListIdsForTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/lists';
};
type GetListIdsForTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetListIdsForTagError = GetListIdsForTagErrors[keyof GetListIdsForTagErrors];
type GetListIdsForTagResponses = {
    /**
     * Success
     */
    200: GetTagListRelationshipsResponseCollection;
};
type GetListIdsForTagResponse = GetListIdsForTagResponses[keyof GetListIdsForTagResponses];
type TagListsData = {
    body: TagListOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/lists';
};
type TagListsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type TagListsError = TagListsErrors[keyof TagListsErrors];
type TagListsResponses = {
    /**
     * Success
     */
    204: void;
};
type TagListsResponse = TagListsResponses[keyof TagListsResponses];
type RemoveTagFromSegmentsData = {
    body: TagSegmentOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/segments';
};
type RemoveTagFromSegmentsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RemoveTagFromSegmentsError = RemoveTagFromSegmentsErrors[keyof RemoveTagFromSegmentsErrors];
type RemoveTagFromSegmentsResponses = {
    /**
     * Success
     */
    204: void;
};
type RemoveTagFromSegmentsResponse = RemoveTagFromSegmentsResponses[keyof RemoveTagFromSegmentsResponses];
type GetSegmentIdsForTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/segments';
};
type GetSegmentIdsForTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetSegmentIdsForTagError = GetSegmentIdsForTagErrors[keyof GetSegmentIdsForTagErrors];
type GetSegmentIdsForTagResponses = {
    /**
     * Success
     */
    200: GetTagSegmentRelationshipsResponseCollection;
};
type GetSegmentIdsForTagResponse = GetSegmentIdsForTagResponses[keyof GetSegmentIdsForTagResponses];
type TagSegmentsData = {
    body: TagSegmentOp;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/segments';
};
type TagSegmentsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type TagSegmentsError = TagSegmentsErrors[keyof TagSegmentsErrors];
type TagSegmentsResponses = {
    /**
     * Success
     */
    204: void;
};
type TagSegmentsResponse = TagSegmentsResponses[keyof TagSegmentsResponses];
type GetTagGroupForTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag-group]'?: Array<'name' | 'exclusive' | 'default'>;
    };
    url: '/api/tags/{id}/tag-group';
};
type GetTagGroupForTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagGroupForTagError = GetTagGroupForTagErrors[keyof GetTagGroupForTagErrors];
type GetTagGroupForTagResponses = {
    /**
     * Success
     */
    200: GetTagGroupResponse;
};
type GetTagGroupForTagResponse = GetTagGroupForTagResponses[keyof GetTagGroupForTagResponses];
type GetTagGroupIdForTagData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tags/{id}/relationships/tag-group';
};
type GetTagGroupIdForTagErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagGroupIdForTagError = GetTagGroupIdForTagErrors[keyof GetTagGroupIdForTagErrors];
type GetTagGroupIdForTagResponses = {
    /**
     * Success
     */
    200: GetTagGroupRelationshipResponse;
};
type GetTagGroupIdForTagResponse = GetTagGroupIdForTagResponses[keyof GetTagGroupIdForTagResponses];
type GetTagsForTagGroupData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag Group ID
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tag]'?: Array<'name'>;
    };
    url: '/api/tag-groups/{id}/tags';
};
type GetTagsForTagGroupErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagsForTagGroupError = GetTagsForTagGroupErrors[keyof GetTagsForTagGroupErrors];
type GetTagsForTagGroupResponses = {
    /**
     * Success
     */
    200: GetTagResponseCollection;
};
type GetTagsForTagGroupResponse = GetTagsForTagGroupResponses[keyof GetTagsForTagGroupResponses];
type GetTagIdsForTagGroupData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The Tag Group ID
         */
        id: string;
    };
    query?: never;
    url: '/api/tag-groups/{id}/relationships/tags';
};
type GetTagIdsForTagGroupErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTagIdsForTagGroupError = GetTagIdsForTagGroupErrors[keyof GetTagIdsForTagGroupErrors];
type GetTagIdsForTagGroupResponses = {
    /**
     * Success
     */
    200: GetTagGroupTagsRelationshipsResponseCollection;
};
type GetTagIdsForTagGroupResponse = GetTagIdsForTagGroupResponses[keyof GetTagIdsForTagGroupResponses];
type GetTemplatesData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`name`: `any`, `contains`, `equals`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/templates';
};
type GetTemplatesErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTemplatesError = GetTemplatesErrors[keyof GetTemplatesErrors];
type GetTemplatesResponses = {
    /**
     * Success
     */
    200: GetTemplateResponseCollection;
};
type GetTemplatesResponse = GetTemplatesResponses[keyof GetTemplatesResponses];
type CreateTemplateData = {
    body: TemplateCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/templates';
};
type CreateTemplateErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateTemplateError = CreateTemplateErrors[keyof CreateTemplateErrors];
type CreateTemplateResponses = {
    /**
     * Success
     */
    201: PostTemplateResponse;
};
type CreateTemplateResponse = CreateTemplateResponses[keyof CreateTemplateResponses];
type DeleteTemplateData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of template
         */
        id: string;
    };
    query?: never;
    url: '/api/templates/{id}';
};
type DeleteTemplateErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteTemplateError = DeleteTemplateErrors[keyof DeleteTemplateErrors];
type DeleteTemplateResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteTemplateResponse = DeleteTemplateResponses[keyof DeleteTemplateResponses];
type GetTemplateData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of template
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template]'?: Array<'name' | 'editor_type' | 'html' | 'text' | 'amp' | 'created' | 'updated'>;
    };
    url: '/api/templates/{id}';
};
type GetTemplateErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTemplateError = GetTemplateErrors[keyof GetTemplateErrors];
type GetTemplateResponses = {
    /**
     * Success
     */
    200: GetTemplateResponse;
};
type GetTemplateResponse2 = GetTemplateResponses[keyof GetTemplateResponses];
type UpdateTemplateData = {
    body: TemplateUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of template
         */
        id: string;
    };
    query?: never;
    url: '/api/templates/{id}';
};
type UpdateTemplateErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateTemplateError = UpdateTemplateErrors[keyof UpdateTemplateErrors];
type UpdateTemplateResponses = {
    /**
     * Success
     */
    200: PatchTemplateResponse;
};
type UpdateTemplateResponse = UpdateTemplateResponses[keyof UpdateTemplateResponses];
type GetAllUniversalContentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template-universal-content]'?: Array<'name' | 'definition' | 'definition.content_type' | 'definition.type' | 'definition.data' | 'definition.data.content' | 'definition.data.display_options' | 'definition.data.display_options.show_on' | 'definition.data.display_options.visible_check' | 'definition.data.display_options.content_repeat' | 'definition.data.display_options.content_repeat.repeat_for' | 'definition.data.display_options.content_repeat.item_alias' | 'definition.data.styles' | 'definition.data.styles.background_color' | 'definition.data.styles.block_background_color' | 'definition.data.styles.block_border_color' | 'definition.data.styles.block_border_style' | 'definition.data.styles.block_border_width' | 'definition.data.styles.block_padding_bottom' | 'definition.data.styles.block_padding_left' | 'definition.data.styles.block_padding_right' | 'definition.data.styles.block_padding_top' | 'definition.data.styles.color' | 'definition.data.styles.extra_css_class' | 'definition.data.styles.font_family' | 'definition.data.styles.font_size' | 'definition.data.styles.font_style' | 'definition.data.styles.font_weight' | 'definition.data.styles.inner_padding_bottom' | 'definition.data.styles.inner_padding_left' | 'definition.data.styles.inner_padding_right' | 'definition.data.styles.inner_padding_top' | 'definition.data.styles.letter_spacing' | 'definition.data.styles.line_height' | 'definition.data.styles.mobile_stretch_content' | 'definition.data.styles.text_align' | 'definition.data.styles.text_decoration' | 'definition.data.styles.text_table_layout' | 'created' | 'updated' | 'screenshot_status' | 'screenshot_url'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`name`: `any`, `equals`<br>`created`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`definition.content_type`: `equals`<br>`definition.type`: `equals`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'id' | '-id' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/template-universal-content';
};
type GetAllUniversalContentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetAllUniversalContentError = GetAllUniversalContentErrors[keyof GetAllUniversalContentErrors];
type GetAllUniversalContentResponses = {
    /**
     * Success
     */
    200: GetUniversalContentResponseCollection;
};
type GetAllUniversalContentResponse = GetAllUniversalContentResponses[keyof GetAllUniversalContentResponses];
type CreateUniversalContentData = {
    /**
     * Create a template universal content
     */
    body: UniversalContentCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/template-universal-content';
};
type CreateUniversalContentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateUniversalContentError = CreateUniversalContentErrors[keyof CreateUniversalContentErrors];
type CreateUniversalContentResponses = {
    /**
     * Success
     */
    201: PostUniversalContentResponse;
};
type CreateUniversalContentResponse = CreateUniversalContentResponses[keyof CreateUniversalContentResponses];
type DeleteUniversalContentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the template universal content
         */
        id: string;
    };
    query?: never;
    url: '/api/template-universal-content/{id}';
};
type DeleteUniversalContentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteUniversalContentError = DeleteUniversalContentErrors[keyof DeleteUniversalContentErrors];
type DeleteUniversalContentResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteUniversalContentResponse = DeleteUniversalContentResponses[keyof DeleteUniversalContentResponses];
type GetUniversalContentData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the universal content
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[template-universal-content]'?: Array<'name' | 'definition' | 'definition.content_type' | 'definition.type' | 'definition.data' | 'definition.data.content' | 'definition.data.display_options' | 'definition.data.display_options.show_on' | 'definition.data.display_options.visible_check' | 'definition.data.display_options.content_repeat' | 'definition.data.display_options.content_repeat.repeat_for' | 'definition.data.display_options.content_repeat.item_alias' | 'definition.data.styles' | 'definition.data.styles.background_color' | 'definition.data.styles.block_background_color' | 'definition.data.styles.block_border_color' | 'definition.data.styles.block_border_style' | 'definition.data.styles.block_border_width' | 'definition.data.styles.block_padding_bottom' | 'definition.data.styles.block_padding_left' | 'definition.data.styles.block_padding_right' | 'definition.data.styles.block_padding_top' | 'definition.data.styles.color' | 'definition.data.styles.extra_css_class' | 'definition.data.styles.font_family' | 'definition.data.styles.font_size' | 'definition.data.styles.font_style' | 'definition.data.styles.font_weight' | 'definition.data.styles.inner_padding_bottom' | 'definition.data.styles.inner_padding_left' | 'definition.data.styles.inner_padding_right' | 'definition.data.styles.inner_padding_top' | 'definition.data.styles.letter_spacing' | 'definition.data.styles.line_height' | 'definition.data.styles.mobile_stretch_content' | 'definition.data.styles.text_align' | 'definition.data.styles.text_decoration' | 'definition.data.styles.text_table_layout' | 'created' | 'updated' | 'screenshot_status' | 'screenshot_url'>;
    };
    url: '/api/template-universal-content/{id}';
};
type GetUniversalContentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetUniversalContentError = GetUniversalContentErrors[keyof GetUniversalContentErrors];
type GetUniversalContentResponses = {
    /**
     * Success
     */
    200: GetUniversalContentResponse;
};
type GetUniversalContentResponse2 = GetUniversalContentResponses[keyof GetUniversalContentResponses];
type UpdateUniversalContentData = {
    /**
     * Update a universal content by ID
     */
    body: UniversalContentPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the template universal content
         */
        id: string;
    };
    query?: never;
    url: '/api/template-universal-content/{id}';
};
type UpdateUniversalContentErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateUniversalContentError = UpdateUniversalContentErrors[keyof UpdateUniversalContentErrors];
type UpdateUniversalContentResponses = {
    /**
     * Success
     */
    200: PatchUniversalContentResponse;
};
type UpdateUniversalContentResponse = UpdateUniversalContentResponses[keyof UpdateUniversalContentResponses];
type RenderTemplateData = {
    body: TemplateRenderQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/template-render';
};
type RenderTemplateErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type RenderTemplateError = RenderTemplateErrors[keyof RenderTemplateErrors];
type RenderTemplateResponses = {
    /**
     * Success
     */
    201: PostTemplateResponse;
};
type RenderTemplateResponse = RenderTemplateResponses[keyof RenderTemplateResponses];
type CloneTemplateData = {
    body: TemplateCloneQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/template-clone';
};
type CloneTemplateErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CloneTemplateError = CloneTemplateErrors[keyof CloneTemplateErrors];
type CloneTemplateResponses = {
    /**
     * Success
     */
    201: PostTemplateResponse;
};
type CloneTemplateResponse = CloneTemplateResponses[keyof CloneTemplateResponses];
type GetTrackingSettingsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tracking-setting]'?: Array<'auto_add_parameters' | 'utm_source' | 'utm_source.flow' | 'utm_source.flow.type' | 'utm_source.flow.value' | 'utm_source.campaign' | 'utm_source.campaign.type' | 'utm_source.campaign.value' | 'utm_medium' | 'utm_medium.flow' | 'utm_medium.flow.type' | 'utm_medium.flow.value' | 'utm_medium.campaign' | 'utm_medium.campaign.type' | 'utm_medium.campaign.value' | 'utm_campaign' | 'utm_campaign.flow' | 'utm_campaign.flow.type' | 'utm_campaign.flow.value' | 'utm_campaign.campaign' | 'utm_campaign.campaign.type' | 'utm_campaign.campaign.value' | 'utm_id' | 'utm_id.flow' | 'utm_id.flow.type' | 'utm_id.flow.value' | 'utm_id.campaign' | 'utm_id.campaign.type' | 'utm_id.campaign.value' | 'utm_term' | 'utm_term.flow' | 'utm_term.flow.type' | 'utm_term.flow.value' | 'utm_term.campaign' | 'utm_term.campaign.type' | 'utm_term.campaign.value' | 'custom_parameters'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 1. Min: 1. Max: 1.
         */
        'page[size]'?: number;
    };
    url: '/api/tracking-settings';
};
type GetTrackingSettingsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTrackingSettingsError = GetTrackingSettingsErrors[keyof GetTrackingSettingsErrors];
type GetTrackingSettingsResponses = {
    /**
     * Success
     */
    200: GetTrackingSettingResponseCollection;
};
type GetTrackingSettingsResponse = GetTrackingSettingsResponses[keyof GetTrackingSettingsResponses];
type GetTrackingSettingData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The id of the tracking setting (account ID).
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[tracking-setting]'?: Array<'auto_add_parameters' | 'utm_source' | 'utm_source.flow' | 'utm_source.flow.type' | 'utm_source.flow.value' | 'utm_source.campaign' | 'utm_source.campaign.type' | 'utm_source.campaign.value' | 'utm_medium' | 'utm_medium.flow' | 'utm_medium.flow.type' | 'utm_medium.flow.value' | 'utm_medium.campaign' | 'utm_medium.campaign.type' | 'utm_medium.campaign.value' | 'utm_campaign' | 'utm_campaign.flow' | 'utm_campaign.flow.type' | 'utm_campaign.flow.value' | 'utm_campaign.campaign' | 'utm_campaign.campaign.type' | 'utm_campaign.campaign.value' | 'utm_id' | 'utm_id.flow' | 'utm_id.flow.type' | 'utm_id.flow.value' | 'utm_id.campaign' | 'utm_id.campaign.type' | 'utm_id.campaign.value' | 'utm_term' | 'utm_term.flow' | 'utm_term.flow.type' | 'utm_term.flow.value' | 'utm_term.campaign' | 'utm_term.campaign.type' | 'utm_term.campaign.value' | 'custom_parameters'>;
    };
    url: '/api/tracking-settings/{id}';
};
type GetTrackingSettingErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetTrackingSettingError = GetTrackingSettingErrors[keyof GetTrackingSettingErrors];
type GetTrackingSettingResponses = {
    /**
     * Success
     */
    200: GetTrackingSettingResponse;
};
type GetTrackingSettingResponse2 = GetTrackingSettingResponses[keyof GetTrackingSettingResponses];
type UpdateTrackingSettingData = {
    /**
     * DTO for updating tracking settings
     */
    body: TrackingSettingPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The id of the tracking setting (account ID).
         */
        id: string;
    };
    query?: never;
    url: '/api/tracking-settings/{id}';
};
type UpdateTrackingSettingErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateTrackingSettingError = UpdateTrackingSettingErrors[keyof UpdateTrackingSettingErrors];
type UpdateTrackingSettingResponses = {
    /**
     * Success
     */
    200: PatchTrackingSettingResponse;
};
type UpdateTrackingSettingResponse = UpdateTrackingSettingResponses[keyof UpdateTrackingSettingResponses];
type GetWebFeedsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[web-feed]'?: Array<'name' | 'url' | 'request_method' | 'content_type' | 'created' | 'updated' | 'status'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `any`, `contains`, `equals`<br>`created`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 5. Min: 1. Max: 20.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'name' | '-name' | 'updated' | '-updated';
    };
    url: '/api/web-feeds';
};
type GetWebFeedsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetWebFeedsError = GetWebFeedsErrors[keyof GetWebFeedsErrors];
type GetWebFeedsResponses = {
    /**
     * Success
     */
    200: GetWebFeedResponseCollection;
};
type GetWebFeedsResponse = GetWebFeedsResponses[keyof GetWebFeedsResponses];
type CreateWebFeedData = {
    /**
     * Create a web feed
     */
    body: WebFeedCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/web-feeds';
};
type CreateWebFeedErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateWebFeedError = CreateWebFeedErrors[keyof CreateWebFeedErrors];
type CreateWebFeedResponses = {
    /**
     * Success
     */
    201: PostWebFeedResponse;
};
type CreateWebFeedResponse = CreateWebFeedResponses[keyof CreateWebFeedResponses];
type DeleteWebFeedData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the web feed
         */
        id: string;
    };
    query?: never;
    url: '/api/web-feeds/{id}';
};
type DeleteWebFeedErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteWebFeedError = DeleteWebFeedErrors[keyof DeleteWebFeedErrors];
type DeleteWebFeedResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteWebFeedResponse = DeleteWebFeedResponses[keyof DeleteWebFeedResponses];
type GetWebFeedData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the web feed
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[web-feed]'?: Array<'name' | 'url' | 'request_method' | 'content_type' | 'created' | 'updated' | 'status'>;
    };
    url: '/api/web-feeds/{id}';
};
type GetWebFeedErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetWebFeedError = GetWebFeedErrors[keyof GetWebFeedErrors];
type GetWebFeedResponses = {
    /**
     * Success
     */
    200: GetWebFeedResponse;
};
type GetWebFeedResponse2 = GetWebFeedResponses[keyof GetWebFeedResponses];
type UpdateWebFeedData = {
    /**
     * Update a web feed by ID
     */
    body: WebFeedPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the web feed
         */
        id: string;
    };
    query?: never;
    url: '/api/web-feeds/{id}';
};
type UpdateWebFeedErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateWebFeedError = UpdateWebFeedErrors[keyof UpdateWebFeedErrors];
type UpdateWebFeedResponses = {
    /**
     * Success
     */
    200: PatchWebFeedResponse;
};
type UpdateWebFeedResponse = UpdateWebFeedResponses[keyof UpdateWebFeedResponses];
type GetWebhooksData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[webhook]'?: Array<'name' | 'description' | 'endpoint_url' | 'enabled' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'webhook-topics'>;
    };
    url: '/api/webhooks';
};
type GetWebhooksErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetWebhooksError = GetWebhooksErrors[keyof GetWebhooksErrors];
type GetWebhooksResponses = {
    /**
     * Success
     */
    200: GetWebhookResponseCollectionCompoundDocument;
};
type GetWebhooksResponse = GetWebhooksResponses[keyof GetWebhooksResponses];
type CreateWebhookData = {
    body: WebhookCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/webhooks';
};
type CreateWebhookErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateWebhookError = CreateWebhookErrors[keyof CreateWebhookErrors];
type CreateWebhookResponses = {
    /**
     * Success
     */
    201: PostWebhookResponse;
};
type CreateWebhookResponse = CreateWebhookResponses[keyof CreateWebhookResponses];
type DeleteWebhookData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the webhook.
         */
        id: string;
    };
    query?: never;
    url: '/api/webhooks/{id}';
};
type DeleteWebhookErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type DeleteWebhookError = DeleteWebhookErrors[keyof DeleteWebhookErrors];
type DeleteWebhookResponses = {
    /**
     * Success
     */
    204: void;
};
type DeleteWebhookResponse = DeleteWebhookResponses[keyof DeleteWebhookResponses];
type GetWebhookData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the webhook.
         */
        id: string;
    };
    query?: {
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[webhook]'?: Array<'name' | 'description' | 'endpoint_url' | 'enabled' | 'created_at' | 'updated_at'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#relationships
         */
        include?: Array<'webhook-topics'>;
    };
    url: '/api/webhooks/{id}';
};
type GetWebhookErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetWebhookError = GetWebhookErrors[keyof GetWebhookErrors];
type GetWebhookResponses = {
    /**
     * Success
     */
    200: GetWebhookResponseCompoundDocument;
};
type GetWebhookResponse = GetWebhookResponses[keyof GetWebhookResponses];
type UpdateWebhookData = {
    body: WebhookPartialUpdateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the webhook.
         */
        id: string;
    };
    query?: never;
    url: '/api/webhooks/{id}';
};
type UpdateWebhookErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UpdateWebhookError = UpdateWebhookErrors[keyof UpdateWebhookErrors];
type UpdateWebhookResponses = {
    /**
     * Success
     */
    200: PatchWebhookResponse;
};
type UpdateWebhookResponse = UpdateWebhookResponses[keyof UpdateWebhookResponses];
type GetWebhookTopicsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query?: never;
    url: '/api/webhook-topics';
};
type GetWebhookTopicsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetWebhookTopicsError = GetWebhookTopicsErrors[keyof GetWebhookTopicsErrors];
type GetWebhookTopicsResponses = {
    /**
     * Success
     */
    200: GetWebhookTopicResponseCollection;
};
type GetWebhookTopicsResponse = GetWebhookTopicsResponses[keyof GetWebhookTopicsResponses];
type GetWebhookTopicData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path: {
        /**
         * The ID of the webhook topic.
         */
        id: string;
    };
    query?: never;
    url: '/api/webhook-topics/{id}';
};
type GetWebhookTopicErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetWebhookTopicError = GetWebhookTopicErrors[keyof GetWebhookTopicErrors];
type GetWebhookTopicResponses = {
    /**
     * Success
     */
    200: GetWebhookTopicResponse;
};
type GetWebhookTopicResponse2 = GetWebhookTopicResponses[keyof GetWebhookTopicResponses];
type GetClientReviewValuesReportsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[review-values-report]'?: Array<'results'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`product_external_ids`: `any`, `equals`
         */
        filter?: string;
        /**
         * group by value for this report
         */
        group_by: 'company_id' | 'product_id';
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * list of statistics to calculate for this report
         */
        statistics: string;
        /**
         * timeframe window for value report
         */
        timeframe: 'all_time' | 'last_30_days' | 'last_365_days' | 'last_90_days';
    };
    url: '/client/review-values-reports';
};
type GetClientReviewValuesReportsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetClientReviewValuesReportsError = GetClientReviewValuesReportsErrors[keyof GetClientReviewValuesReportsErrors];
type GetClientReviewValuesReportsResponses = {
    /**
     * Success
     */
    200: GetReviewValuesReportResponseCollection;
};
type GetClientReviewValuesReportsResponse = GetClientReviewValuesReportsResponses[keyof GetClientReviewValuesReportsResponses];
type GetClientReviewsData = {
    body?: never;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sparse-fieldsets
         */
        'fields[review]'?: Array<'status' | 'status.value' | 'status.rejection_reason' | 'status.rejection_reason.reason' | 'status.rejection_reason.status_explanation' | 'verified' | 'review_type' | 'created' | 'updated' | 'images' | 'product' | 'product.url' | 'product.name' | 'product.image_url' | 'product.external_id' | 'rating' | 'author' | 'content' | 'title' | 'smart_quote' | 'public_reply' | 'public_reply.content' | 'public_reply.author' | 'public_reply.updated'>;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`<br>`review_type`: `equals`<br>`rating`: `any`, `equals`, `greater-or-equal`, `less-or-equal`<br>`id`: `any`, `equals`<br>`content`: `contains`<br>`smart_quote`: `has`<br>`public_reply`: `has`<br>`verified`: `equals`<br>`incentivized`: `equals`<br>`edited`: `equals`<br>`media`: `has`<br>`created`: `greater-or-equal`, `less-or-equal`<br>`updated`: `greater-or-equal`, `less-or-equal`
         */
        filter?: string;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#pagination
         */
        'page[cursor]'?: string;
        /**
         * Default: 20. Min: 1. Max: 100.
         */
        'page[size]'?: number;
        /**
         * For more information please visit https://developers.klaviyo.com/en/v2026-01-15/reference/api-overview#sorting
         */
        sort?: 'created' | '-created' | 'rating' | '-rating' | 'updated' | '-updated';
    };
    url: '/client/reviews';
};
type GetClientReviewsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type GetClientReviewsError = GetClientReviewsErrors[keyof GetClientReviewsErrors];
type GetClientReviewsResponses = {
    /**
     * Success
     */
    200: GetClientReviewResponseDtoCollection;
};
type GetClientReviewsResponse = GetClientReviewsResponses[keyof GetClientReviewsResponses];
type CreateClientReviewData = {
    body: ReviewCreateDto;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/reviews';
};
type CreateClientReviewErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateClientReviewError = CreateClientReviewErrors[keyof CreateClientReviewErrors];
type CreateClientReviewResponses = {
    /**
     * Success
     */
    202: unknown;
};
type CreateClientSubscriptionData = {
    body: OnsiteSubscriptionCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/subscriptions';
};
type CreateClientSubscriptionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateClientSubscriptionError = CreateClientSubscriptionErrors[keyof CreateClientSubscriptionErrors];
type CreateClientSubscriptionResponses = {
    /**
     * Success
     */
    202: unknown;
};
type CreateClientPushTokenData = {
    body: PushTokenCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/push-tokens';
};
type CreateClientPushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateClientPushTokenError = CreateClientPushTokenErrors[keyof CreateClientPushTokenErrors];
type CreateClientPushTokenResponses = {
    /**
     * Success
     */
    202: unknown;
};
type UnregisterClientPushTokenData = {
    body: PushTokenUnregisterQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/push-token-unregister';
};
type UnregisterClientPushTokenErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type UnregisterClientPushTokenError = UnregisterClientPushTokenErrors[keyof UnregisterClientPushTokenErrors];
type UnregisterClientPushTokenResponses = {
    /**
     * Success
     */
    202: unknown;
};
type CreateClientEventData = {
    body: EventCreateQueryV2;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/events';
};
type CreateClientEventErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateClientEventError = CreateClientEventErrors[keyof CreateClientEventErrors];
type CreateClientEventResponses = {
    /**
     * Success
     */
    202: unknown;
};
type CreateClientProfileData = {
    body: OnsiteProfileCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/profiles';
};
type CreateClientProfileErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateClientProfileError = CreateClientProfileErrors[keyof CreateClientProfileErrors];
type CreateClientProfileResponses = {
    /**
     * Success
     */
    202: unknown;
};
type BulkCreateClientEventsData = {
    body: EventsBulkCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/event-bulk-create';
};
type BulkCreateClientEventsErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type BulkCreateClientEventsError = BulkCreateClientEventsErrors[keyof BulkCreateClientEventsErrors];
type BulkCreateClientEventsResponses = {
    /**
     * Success
     */
    202: unknown;
};
type CreateClientBackInStockSubscriptionData = {
    body: ClientBisSubscriptionCreateQuery;
    headers: {
        /**
         * API endpoint revision (format: YYYY-MM-DD[.suffix])
         */
        revision: string;
    };
    path?: never;
    query: {
        /**
         * Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.
         */
        company_id: string;
    };
    url: '/client/back-in-stock-subscriptions';
};
type CreateClientBackInStockSubscriptionErrors = {
    /**
     * Client Error
     */
    '4XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
    /**
     * Server Error
     */
    '5XX': {
        errors: Array<{
            id: string;
            code: string;
            title: string;
            detail: string;
            source?: {
                pointer?: string;
                parameter?: string;
            };
        }>;
    };
};
type CreateClientBackInStockSubscriptionError = CreateClientBackInStockSubscriptionErrors[keyof CreateClientBackInStockSubscriptionErrors];
type CreateClientBackInStockSubscriptionResponses = {
    /**
     * Success
     */
    202: unknown;
};

type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options$1<TData, ThrowOnError> & {
    /**
     * You can provide a client instance returned by `createClient()` instead of
     * individual options. This might be also useful if you want to implement a
     * custom client.
     */
    client?: Client;
    /**
     * You can pass arbitrary values through the `meta` object. This can be
     * used to access values that aren't defined as part of the SDK function.
     */
    meta?: Record<string, unknown>;
};
/**
 * Get Accounts
 *
 * Retrieve the account(s) associated with a given private API key. This will return 1 account object within the array.
 *
 * You can use this to retrieve account-specific data (contact information, timezone, currency, Public API key, etc.) or test if a Private API Key belongs to the correct account prior to performing subsequent actions with the API.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `accounts:read`
 */
declare const getAccounts: <ThrowOnError extends boolean = false>(options: Options<GetAccountsData, ThrowOnError>) => RequestResult<GetAccountsResponses, GetAccountsErrors, ThrowOnError, "fields">;
/**
 * Get Account
 *
 * Retrieve a single account object by its account ID. You can only request the account by which the private API key was generated.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `accounts:read`
 */
declare const getAccount: <ThrowOnError extends boolean = false>(options: Options<GetAccountData, ThrowOnError>) => RequestResult<GetAccountResponses, GetAccountErrors, ThrowOnError, "fields">;
/**
 * Get Campaigns
 *
 * Returns some or all campaigns based on filters.
 *
 * A channel filter is required to list campaigns. Please provide either:
 * `?filter=equals(messages.channel,'email')` to list email campaigns, or
 * `?filter=equals(messages.channel,'sms')` to list SMS campaigns.
 * `?filter=equals(messages.channel,'mobile_push')` to list mobile push campaigns.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaigns: <ThrowOnError extends boolean = false>(options: Options<GetCampaignsData, ThrowOnError>) => RequestResult<GetCampaignsResponses, GetCampaignsErrors, ThrowOnError, "fields">;
/**
 * Create Campaign
 *
 * Creates a campaign given a set of parameters, then returns it.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const createCampaign: <ThrowOnError extends boolean = false>(options: Options<CreateCampaignData, ThrowOnError>) => RequestResult<CreateCampaignResponses, CreateCampaignErrors, ThrowOnError, "fields">;
/**
 * Delete Campaign
 *
 * Delete a campaign with the given campaign ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const deleteCampaign: <ThrowOnError extends boolean = false>(options: Options<DeleteCampaignData, ThrowOnError>) => RequestResult<DeleteCampaignResponses, DeleteCampaignErrors, ThrowOnError, "fields">;
/**
 * Get Campaign
 *
 * Returns a specific campaign based on a required id.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaign: <ThrowOnError extends boolean = false>(options: Options<GetCampaignData, ThrowOnError>) => RequestResult<GetCampaignResponses, GetCampaignErrors, ThrowOnError, "fields">;
/**
 * Update Campaign
 *
 * Update a campaign with the given campaign ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const updateCampaign: <ThrowOnError extends boolean = false>(options: Options<UpdateCampaignData, ThrowOnError>) => RequestResult<UpdateCampaignResponses, UpdateCampaignErrors, ThrowOnError, "fields">;
/**
 * Get Campaign Message
 *
 * Returns a specific message based on a required id.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetCampaignMessageData, ThrowOnError>) => RequestResult<GetCampaignMessageResponses, GetCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Update Campaign Message
 *
 * Update a campaign message<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const updateCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<UpdateCampaignMessageData, ThrowOnError>) => RequestResult<UpdateCampaignMessageResponses, UpdateCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Campaign Send Job
 *
 * Get a campaign send job<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaignSendJob: <ThrowOnError extends boolean = false>(options: Options<GetCampaignSendJobData, ThrowOnError>) => RequestResult<GetCampaignSendJobResponses, GetCampaignSendJobErrors, ThrowOnError, "fields">;
/**
 * Cancel Campaign Send
 *
 * Permanently cancel the campaign, setting the status to CANCELED or
 * revert the campaign, setting the status back to DRAFT<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const cancelCampaignSend: <ThrowOnError extends boolean = false>(options: Options<CancelCampaignSendData, ThrowOnError>) => RequestResult<CancelCampaignSendResponses, CancelCampaignSendErrors, ThrowOnError, "fields">;
/**
 * Get Campaign Recipient Estimation Job
 *
 * Retrieve the status of a recipient estimation job triggered
 * with the `Create Campaign Recipient Estimation Job` endpoint.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaignRecipientEstimationJob: <ThrowOnError extends boolean = false>(options: Options<GetCampaignRecipientEstimationJobData, ThrowOnError>) => RequestResult<GetCampaignRecipientEstimationJobResponses, GetCampaignRecipientEstimationJobErrors, ThrowOnError, "fields">;
/**
 * Get Campaign Recipient Estimation
 *
 * Get the estimated recipient count for a campaign with the provided campaign ID.
 * You can refresh this count by using the `Create Campaign Recipient Estimation Job` endpoint.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaignRecipientEstimation: <ThrowOnError extends boolean = false>(options: Options<GetCampaignRecipientEstimationData, ThrowOnError>) => RequestResult<GetCampaignRecipientEstimationResponses, GetCampaignRecipientEstimationErrors, ThrowOnError, "fields">;
/**
 * Create Campaign Clone
 *
 * Clones an existing campaign, returning a new campaign based on the original with a new ID and name.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const createCampaignClone: <ThrowOnError extends boolean = false>(options: Options<CreateCampaignCloneData, ThrowOnError>) => RequestResult<CreateCampaignCloneResponses, CreateCampaignCloneErrors, ThrowOnError, "fields">;
/**
 * Assign Template to Campaign Message
 *
 * Creates a non-reusable version of the template and assigns it to the message.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const assignTemplateToCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<AssignTemplateToCampaignMessageData, ThrowOnError>) => RequestResult<AssignTemplateToCampaignMessageResponses, AssignTemplateToCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Send Campaign
 *
 * Trigger a campaign to send asynchronously<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const sendCampaign: <ThrowOnError extends boolean = false>(options: Options<SendCampaignData, ThrowOnError>) => RequestResult<SendCampaignResponses, SendCampaignErrors, ThrowOnError, "fields">;
/**
 * Refresh Campaign Recipient Estimation
 *
 * Trigger an asynchronous job to update the estimated number of recipients
 * for the given campaign ID. Use the `Get Campaign Recipient Estimation
 * Job` endpoint to retrieve the status of this estimation job. Use the
 * `Get Campaign Recipient Estimation` endpoint to retrieve the estimated
 * recipient count for a given campaign.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 */
declare const refreshCampaignRecipientEstimation: <ThrowOnError extends boolean = false>(options: Options<RefreshCampaignRecipientEstimationData, ThrowOnError>) => RequestResult<RefreshCampaignRecipientEstimationResponses, RefreshCampaignRecipientEstimationErrors, ThrowOnError, "fields">;
/**
 * Get Campaign for Campaign Message
 *
 * Return the related campaign<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaignForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetCampaignForCampaignMessageData, ThrowOnError>) => RequestResult<GetCampaignForCampaignMessageResponses, GetCampaignForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Campaign ID for Campaign Message
 *
 * Returns the ID of the related campaign<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getCampaignIdForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetCampaignIdForCampaignMessageData, ThrowOnError>) => RequestResult<GetCampaignIdForCampaignMessageResponses, GetCampaignIdForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Template for Campaign Message
 *
 * Return the related template<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `templates:read`
 */
declare const getTemplateForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetTemplateForCampaignMessageData, ThrowOnError>) => RequestResult<GetTemplateForCampaignMessageResponses, GetTemplateForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Template ID for Campaign Message
 *
 * Returns the ID of the related template<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `templates:read`
 */
declare const getTemplateIdForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetTemplateIdForCampaignMessageData, ThrowOnError>) => RequestResult<GetTemplateIdForCampaignMessageResponses, GetTemplateIdForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Image for Campaign Message
 *
 * Return the related image for a given campaign message<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `images:read`
 */
declare const getImageForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetImageForCampaignMessageData, ThrowOnError>) => RequestResult<GetImageForCampaignMessageResponses, GetImageForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Image ID for Campaign Message
 *
 * Returns the ID of the related image<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `images:read`
 */
declare const getImageIdForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<GetImageIdForCampaignMessageData, ThrowOnError>) => RequestResult<GetImageIdForCampaignMessageResponses, GetImageIdForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Update Image for Campaign Message
 *
 * Update a campaign message image<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:write`
 * `images:read`
 */
declare const updateImageForCampaignMessage: <ThrowOnError extends boolean = false>(options: Options<UpdateImageForCampaignMessageData, ThrowOnError>) => RequestResult<UpdateImageForCampaignMessageResponses, UpdateImageForCampaignMessageErrors, ThrowOnError, "fields">;
/**
 * Get Tags for Campaign
 *
 * Return all tags that belong to the given campaign.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `tags:read`
 */
declare const getTagsForCampaign: <ThrowOnError extends boolean = false>(options: Options<GetTagsForCampaignData, ThrowOnError>) => RequestResult<GetTagsForCampaignResponses, GetTagsForCampaignErrors, ThrowOnError, "fields">;
/**
 * Get Tag IDs for Campaign
 *
 * Returns the IDs of all tags associated with the given campaign.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `tags:read`
 */
declare const getTagIdsForCampaign: <ThrowOnError extends boolean = false>(options: Options<GetTagIdsForCampaignData, ThrowOnError>) => RequestResult<GetTagIdsForCampaignResponses, GetTagIdsForCampaignErrors, ThrowOnError, "fields">;
/**
 * Get Messages for Campaign
 *
 * Return all messages that belong to the given campaign.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getMessagesForCampaign: <ThrowOnError extends boolean = false>(options: Options<GetMessagesForCampaignData, ThrowOnError>) => RequestResult<GetMessagesForCampaignResponses, GetMessagesForCampaignErrors, ThrowOnError, "fields">;
/**
 * Get Message IDs for Campaign
 *
 * Returns the IDs of all messages associated with the given campaign.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const getMessageIdsForCampaign: <ThrowOnError extends boolean = false>(options: Options<GetMessageIdsForCampaignData, ThrowOnError>) => RequestResult<GetMessageIdsForCampaignResponses, GetMessageIdsForCampaignErrors, ThrowOnError, "fields">;
/**
 * Get Catalog Items
 *
 * Get all catalog items in an account.
 *
 * Catalog items can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Currently, the only supported integration type is `$custom`, and the only supported catalog type is `$default`.
 *
 * Returns a maximum of 100 items per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCatalogItems: <ThrowOnError extends boolean = false>(options: Options<GetCatalogItemsData, ThrowOnError>) => RequestResult<GetCatalogItemsResponses, GetCatalogItemsErrors, ThrowOnError, "fields">;
/**
 * Create Catalog Item
 *
 * Create a new catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const createCatalogItem: <ThrowOnError extends boolean = false>(options: Options<CreateCatalogItemData, ThrowOnError>) => RequestResult<CreateCatalogItemResponses, CreateCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Delete Catalog Item
 *
 * Delete a catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const deleteCatalogItem: <ThrowOnError extends boolean = false>(options: Options<DeleteCatalogItemData, ThrowOnError>) => RequestResult<DeleteCatalogItemResponses, DeleteCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Get Catalog Item
 *
 * Get a specific catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCatalogItem: <ThrowOnError extends boolean = false>(options: Options<GetCatalogItemData, ThrowOnError>) => RequestResult<GetCatalogItemResponses, GetCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Update Catalog Item
 *
 * Update a catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const updateCatalogItem: <ThrowOnError extends boolean = false>(options: Options<UpdateCatalogItemData, ThrowOnError>) => RequestResult<UpdateCatalogItemResponses, UpdateCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Get Catalog Variants
 *
 * Get all variants in an account.
 *
 * Variants can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Currently, the only supported integration type is `$custom`, and the only supported catalog type is `$default`.
 *
 * Returns a maximum of 100 variants per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCatalogVariants: <ThrowOnError extends boolean = false>(options: Options<GetCatalogVariantsData, ThrowOnError>) => RequestResult<GetCatalogVariantsResponses, GetCatalogVariantsErrors, ThrowOnError, "fields">;
/**
 * Create Catalog Variant
 *
 * Create a new variant for a related catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const createCatalogVariant: <ThrowOnError extends boolean = false>(options: Options<CreateCatalogVariantData, ThrowOnError>) => RequestResult<CreateCatalogVariantResponses, CreateCatalogVariantErrors, ThrowOnError, "fields">;
/**
 * Delete Catalog Variant
 *
 * Delete a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const deleteCatalogVariant: <ThrowOnError extends boolean = false>(options: Options<DeleteCatalogVariantData, ThrowOnError>) => RequestResult<DeleteCatalogVariantResponses, DeleteCatalogVariantErrors, ThrowOnError, "fields">;
/**
 * Get Catalog Variant
 *
 * Get a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCatalogVariant: <ThrowOnError extends boolean = false>(options: Options<GetCatalogVariantData, ThrowOnError>) => RequestResult<GetCatalogVariantResponses, GetCatalogVariantErrors, ThrowOnError, "fields">;
/**
 * Update Catalog Variant
 *
 * Update a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const updateCatalogVariant: <ThrowOnError extends boolean = false>(options: Options<UpdateCatalogVariantData, ThrowOnError>) => RequestResult<UpdateCatalogVariantResponses, UpdateCatalogVariantErrors, ThrowOnError, "fields">;
/**
 * Get Catalog Categories
 *
 * Get all catalog categories in an account.
 *
 * Catalog categories can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Currently, the only supported integration type is `$custom`, and the only supported catalog type is `$default`.
 *
 * Returns a maximum of 100 categories per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCatalogCategories: <ThrowOnError extends boolean = false>(options: Options<GetCatalogCategoriesData, ThrowOnError>) => RequestResult<GetCatalogCategoriesResponses, GetCatalogCategoriesErrors, ThrowOnError, "fields">;
/**
 * Create Catalog Category
 *
 * Create a new catalog category.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const createCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<CreateCatalogCategoryData, ThrowOnError>) => RequestResult<CreateCatalogCategoryResponses, CreateCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Delete Catalog Category
 *
 * Delete a catalog category using the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const deleteCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<DeleteCatalogCategoryData, ThrowOnError>) => RequestResult<DeleteCatalogCategoryResponses, DeleteCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Get Catalog Category
 *
 * Get a catalog category with the given category ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<GetCatalogCategoryData, ThrowOnError>) => RequestResult<GetCatalogCategoryResponses, GetCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Update Catalog Category
 *
 * Update a catalog category with the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const updateCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<UpdateCatalogCategoryData, ThrowOnError>) => RequestResult<UpdateCatalogCategoryResponses, UpdateCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Catalog Items Jobs
 *
 * Get all catalog item bulk create jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkCreateCatalogItemsJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateCatalogItemsJobsData, ThrowOnError>) => RequestResult<GetBulkCreateCatalogItemsJobsResponses, GetBulkCreateCatalogItemsJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Catalog Items
 *
 * Create a catalog item bulk create job to create a batch of catalog items.
 *
 * Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkCreateCatalogItems: <ThrowOnError extends boolean = false>(options: Options<BulkCreateCatalogItemsData, ThrowOnError>) => RequestResult<BulkCreateCatalogItemsResponses, BulkCreateCatalogItemsErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Catalog Items Job
 *
 * Get a catalog item bulk create job with the given job ID.
 *
 * An `include` parameter can be provided to get the following related resource data: `items`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkCreateCatalogItemsJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateCatalogItemsJobData, ThrowOnError>) => RequestResult<GetBulkCreateCatalogItemsJobResponses, GetBulkCreateCatalogItemsJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Update Catalog Items Jobs
 *
 * Get all catalog item bulk update jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkUpdateCatalogItemsJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkUpdateCatalogItemsJobsData, ThrowOnError>) => RequestResult<GetBulkUpdateCatalogItemsJobsResponses, GetBulkUpdateCatalogItemsJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Update Catalog Items
 *
 * Create a catalog item bulk update job to update a batch of catalog items.
 *
 * Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkUpdateCatalogItems: <ThrowOnError extends boolean = false>(options: Options<BulkUpdateCatalogItemsData, ThrowOnError>) => RequestResult<BulkUpdateCatalogItemsResponses, BulkUpdateCatalogItemsErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Update Catalog Items Job
 *
 * Get a catalog item bulk update job with the given job ID.
 *
 * An `include` parameter can be provided to get the following related resource data: `items`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkUpdateCatalogItemsJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkUpdateCatalogItemsJobData, ThrowOnError>) => RequestResult<GetBulkUpdateCatalogItemsJobResponses, GetBulkUpdateCatalogItemsJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Delete Catalog Items Jobs
 *
 * Get all catalog item bulk delete jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkDeleteCatalogItemsJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkDeleteCatalogItemsJobsData, ThrowOnError>) => RequestResult<GetBulkDeleteCatalogItemsJobsResponses, GetBulkDeleteCatalogItemsJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Delete Catalog Items
 *
 * Create a catalog item bulk delete job to delete a batch of catalog items.
 *
 * Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkDeleteCatalogItems: <ThrowOnError extends boolean = false>(options: Options<BulkDeleteCatalogItemsData, ThrowOnError>) => RequestResult<BulkDeleteCatalogItemsResponses, BulkDeleteCatalogItemsErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Delete Catalog Items Job
 *
 * Get a catalog item bulk delete job with the given job ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkDeleteCatalogItemsJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkDeleteCatalogItemsJobData, ThrowOnError>) => RequestResult<GetBulkDeleteCatalogItemsJobResponses, GetBulkDeleteCatalogItemsJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Variants Jobs
 *
 * Get all catalog variant bulk create jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkCreateVariantsJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateVariantsJobsData, ThrowOnError>) => RequestResult<GetBulkCreateVariantsJobsResponses, GetBulkCreateVariantsJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Catalog Variants
 *
 * Create a catalog variant bulk create job to create a batch of catalog variants.
 *
 * Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkCreateCatalogVariants: <ThrowOnError extends boolean = false>(options: Options<BulkCreateCatalogVariantsData, ThrowOnError>) => RequestResult<BulkCreateCatalogVariantsResponses, BulkCreateCatalogVariantsErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Variants Job
 *
 * Get a catalog variant bulk create job with the given job ID.
 *
 * An `include` parameter can be provided to get the following related resource data: `variants`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkCreateVariantsJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateVariantsJobData, ThrowOnError>) => RequestResult<GetBulkCreateVariantsJobResponses, GetBulkCreateVariantsJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Update Variants Jobs
 *
 * Get all catalog variant bulk update jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkUpdateVariantsJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkUpdateVariantsJobsData, ThrowOnError>) => RequestResult<GetBulkUpdateVariantsJobsResponses, GetBulkUpdateVariantsJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Update Catalog Variants
 *
 * Create a catalog variant bulk update job to update a batch of catalog variants.
 *
 * Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkUpdateCatalogVariants: <ThrowOnError extends boolean = false>(options: Options<BulkUpdateCatalogVariantsData, ThrowOnError>) => RequestResult<BulkUpdateCatalogVariantsResponses, BulkUpdateCatalogVariantsErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Update Variants Job
 *
 * Get a catalog variate bulk update job with the given job ID.
 *
 * An `include` parameter can be provided to get the following related resource data: `variants`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkUpdateVariantsJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkUpdateVariantsJobData, ThrowOnError>) => RequestResult<GetBulkUpdateVariantsJobResponses, GetBulkUpdateVariantsJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Delete Variants Jobs
 *
 * Get all catalog variant bulk delete jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkDeleteVariantsJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkDeleteVariantsJobsData, ThrowOnError>) => RequestResult<GetBulkDeleteVariantsJobsResponses, GetBulkDeleteVariantsJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Delete Catalog Variants
 *
 * Create a catalog variant bulk delete job to delete a batch of catalog variants.
 *
 * Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkDeleteCatalogVariants: <ThrowOnError extends boolean = false>(options: Options<BulkDeleteCatalogVariantsData, ThrowOnError>) => RequestResult<BulkDeleteCatalogVariantsResponses, BulkDeleteCatalogVariantsErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Delete Variants Job
 *
 * Get a catalog variant bulk delete job with the given job ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkDeleteVariantsJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkDeleteVariantsJobData, ThrowOnError>) => RequestResult<GetBulkDeleteVariantsJobResponses, GetBulkDeleteVariantsJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Categories Jobs
 *
 * Get all catalog category bulk create jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkCreateCategoriesJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateCategoriesJobsData, ThrowOnError>) => RequestResult<GetBulkCreateCategoriesJobsResponses, GetBulkCreateCategoriesJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Catalog Categories
 *
 * Create a catalog category bulk create job to create a batch of catalog categories.
 *
 * Accepts up to 100 catalog categories per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkCreateCatalogCategories: <ThrowOnError extends boolean = false>(options: Options<BulkCreateCatalogCategoriesData, ThrowOnError>) => RequestResult<BulkCreateCatalogCategoriesResponses, BulkCreateCatalogCategoriesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Categories Job
 *
 * Get a catalog category bulk create job with the given job ID.
 *
 * An `include` parameter can be provided to get the following related resource data: `categories`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkCreateCategoriesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateCategoriesJobData, ThrowOnError>) => RequestResult<GetBulkCreateCategoriesJobResponses, GetBulkCreateCategoriesJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Update Categories Jobs
 *
 * Get all catalog category bulk update jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkUpdateCategoriesJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkUpdateCategoriesJobsData, ThrowOnError>) => RequestResult<GetBulkUpdateCategoriesJobsResponses, GetBulkUpdateCategoriesJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Update Catalog Categories
 *
 * Create a catalog category bulk update job to update a batch of catalog categories.
 *
 * Accepts up to 100 catalog categories per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkUpdateCatalogCategories: <ThrowOnError extends boolean = false>(options: Options<BulkUpdateCatalogCategoriesData, ThrowOnError>) => RequestResult<BulkUpdateCatalogCategoriesResponses, BulkUpdateCatalogCategoriesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Update Categories Job
 *
 * Get a catalog category bulk update job with the given job ID.
 *
 * An `include` parameter can be provided to get the following related resource data: `categories`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkUpdateCategoriesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkUpdateCategoriesJobData, ThrowOnError>) => RequestResult<GetBulkUpdateCategoriesJobResponses, GetBulkUpdateCategoriesJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Delete Categories Jobs
 *
 * Get all catalog category bulk delete jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkDeleteCategoriesJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkDeleteCategoriesJobsData, ThrowOnError>) => RequestResult<GetBulkDeleteCategoriesJobsResponses, GetBulkDeleteCategoriesJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Delete Catalog Categories
 *
 * Create a catalog category bulk delete job to delete a batch of catalog categories.
 *
 * Accepts up to 100 catalog categories per request. The maximum allowed payload size is 5MB.
 * The maximum number of jobs in progress at one time is 500.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const bulkDeleteCatalogCategories: <ThrowOnError extends boolean = false>(options: Options<BulkDeleteCatalogCategoriesData, ThrowOnError>) => RequestResult<BulkDeleteCatalogCategoriesResponses, BulkDeleteCatalogCategoriesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Delete Categories Job
 *
 * Get a catalog category bulk delete job with the given job ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getBulkDeleteCategoriesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkDeleteCategoriesJobData, ThrowOnError>) => RequestResult<GetBulkDeleteCategoriesJobResponses, GetBulkDeleteCategoriesJobErrors, ThrowOnError, "fields">;
/**
 * Create Back In Stock Subscription
 *
 * Subscribe a profile to receive back in stock notifications. Check out [our Back in Stock API guide](https://developers.klaviyo.com/en/docs/how_to_set_up_custom_back_in_stock) for more details.
 *
 * This endpoint is specifically designed to be called from server-side applications. To create subscriptions from client-side contexts, use [POST /client/back-in-stock-subscriptions](https://developers.klaviyo.com/en/reference/create_client_back_in_stock_subscription).<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:write`
 * `profiles:write`
 */
declare const createBackInStockSubscription: <ThrowOnError extends boolean = false>(options: Options<CreateBackInStockSubscriptionData, ThrowOnError>) => RequestResult<CreateBackInStockSubscriptionResponses, CreateBackInStockSubscriptionErrors, ThrowOnError, "fields">;
/**
 * Get Items for Catalog Category
 *
 * Get all items in a category with the given category ID.
 *
 * Items can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Returns a maximum of 100 items per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getItemsForCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<GetItemsForCatalogCategoryData, ThrowOnError>) => RequestResult<GetItemsForCatalogCategoryResponses, GetItemsForCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Remove Items from Catalog Category
 *
 * Delete item relationships for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const removeItemsFromCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<RemoveItemsFromCatalogCategoryData, ThrowOnError>) => RequestResult<RemoveItemsFromCatalogCategoryResponses, RemoveItemsFromCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Get Item IDs for Catalog Category
 *
 * Get all items in the given category ID. Returns a maximum of 100 items per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getItemIdsForCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<GetItemIdsForCatalogCategoryData, ThrowOnError>) => RequestResult<GetItemIdsForCatalogCategoryResponses, GetItemIdsForCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Update Items for Catalog Category
 *
 * Update item relationships for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const updateItemsForCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<UpdateItemsForCatalogCategoryData, ThrowOnError>) => RequestResult<UpdateItemsForCatalogCategoryResponses, UpdateItemsForCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Add Items to Catalog Category
 *
 * Create a new item relationship for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const addItemsToCatalogCategory: <ThrowOnError extends boolean = false>(options: Options<AddItemsToCatalogCategoryData, ThrowOnError>) => RequestResult<AddItemsToCatalogCategoryResponses, AddItemsToCatalogCategoryErrors, ThrowOnError, "fields">;
/**
 * Get Variants for Catalog Item
 *
 * Get all variants related to the given item ID.
 *
 * Variants can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Returns a maximum of 100 variants per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getVariantsForCatalogItem: <ThrowOnError extends boolean = false>(options: Options<GetVariantsForCatalogItemData, ThrowOnError>) => RequestResult<GetVariantsForCatalogItemResponses, GetVariantsForCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Get Variant IDs for Catalog Item
 *
 * Get all variants related to the given item ID.
 *
 * Variants can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Returns a maximum of 100 variants per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getVariantIdsForCatalogItem: <ThrowOnError extends boolean = false>(options: Options<GetVariantIdsForCatalogItemData, ThrowOnError>) => RequestResult<GetVariantIdsForCatalogItemResponses, GetVariantIdsForCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Get Categories for Catalog Item
 *
 * Get all catalog categories that an item with the given item ID is in.
 *
 * Catalog categories can be sorted by the following fields, in ascending and descending order:
 * `created`
 *
 * Returns a maximum of 100 categories per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCategoriesForCatalogItem: <ThrowOnError extends boolean = false>(options: Options<GetCategoriesForCatalogItemData, ThrowOnError>) => RequestResult<GetCategoriesForCatalogItemResponses, GetCategoriesForCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Remove Categories from Catalog Item
 *
 * Delete catalog category relationships for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const removeCategoriesFromCatalogItem: <ThrowOnError extends boolean = false>(options: Options<RemoveCategoriesFromCatalogItemData, ThrowOnError>) => RequestResult<RemoveCategoriesFromCatalogItemResponses, RemoveCategoriesFromCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Get Category IDs for Catalog Item
 *
 * Get all catalog categories that a particular item is in. Returns a maximum of 100 categories per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:read`
 */
declare const getCategoryIdsForCatalogItem: <ThrowOnError extends boolean = false>(options: Options<GetCategoryIdsForCatalogItemData, ThrowOnError>) => RequestResult<GetCategoryIdsForCatalogItemResponses, GetCategoryIdsForCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Update Categories for Catalog Item
 *
 * Update catalog category relationships for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const updateCategoriesForCatalogItem: <ThrowOnError extends boolean = false>(options: Options<UpdateCategoriesForCatalogItemData, ThrowOnError>) => RequestResult<UpdateCategoriesForCatalogItemResponses, UpdateCategoriesForCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Add Categories to Catalog Item
 *
 * Create a new catalog category relationship for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `catalogs:write`
 */
declare const addCategoriesToCatalogItem: <ThrowOnError extends boolean = false>(options: Options<AddCategoriesToCatalogItemData, ThrowOnError>) => RequestResult<AddCategoriesToCatalogItemResponses, AddCategoriesToCatalogItemErrors, ThrowOnError, "fields">;
/**
 * Get Coupons
 *
 * Get all coupons in an account.
 *
 * To learn more, see our [Coupons API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_coupons_api).<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupons:read`
 */
declare const getCoupons: <ThrowOnError extends boolean = false>(options: Options<GetCouponsData, ThrowOnError>) => RequestResult<GetCouponsResponses, GetCouponsErrors, ThrowOnError, "fields">;
/**
 * Create Coupon
 *
 * Creates a new coupon.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `coupons:write`
 */
declare const createCoupon: <ThrowOnError extends boolean = false>(options: Options<CreateCouponData, ThrowOnError>) => RequestResult<CreateCouponResponses, CreateCouponErrors, ThrowOnError, "fields">;
/**
 * Delete Coupon
 *
 * Delete the coupon with the given coupon ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `coupons:write`
 */
declare const deleteCoupon: <ThrowOnError extends boolean = false>(options: Options<DeleteCouponData, ThrowOnError>) => RequestResult<DeleteCouponResponses, DeleteCouponErrors, ThrowOnError, "fields">;
/**
 * Get Coupon
 *
 * Get a specific coupon with the given coupon ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupons:read`
 */
declare const getCoupon: <ThrowOnError extends boolean = false>(options: Options<GetCouponData, ThrowOnError>) => RequestResult<GetCouponResponses, GetCouponErrors, ThrowOnError, "fields">;
/**
 * Update Coupon
 *
 * *Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `coupons:write`
 */
declare const updateCoupon: <ThrowOnError extends boolean = false>(options: Options<UpdateCouponData, ThrowOnError>) => RequestResult<UpdateCouponResponses, UpdateCouponErrors, ThrowOnError, "fields">;
/**
 * Get Coupon Codes
 *
 * Gets a list of coupon codes associated with a coupon/coupons or a profile/profiles.
 *
 * A coupon/coupons or a profile/profiles must be provided as required filter params.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `coupon-codes:read`
 */
declare const getCouponCodes: <ThrowOnError extends boolean = false>(options: Options<GetCouponCodesData, ThrowOnError>) => RequestResult<GetCouponCodesResponses, GetCouponCodesErrors, ThrowOnError, "fields">;
/**
 * Create Coupon Code
 *
 * Synchronously creates a coupon code for the given coupon.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `coupon-codes:write`
 */
declare const createCouponCode: <ThrowOnError extends boolean = false>(options: Options<CreateCouponCodeData, ThrowOnError>) => RequestResult<CreateCouponCodeResponses, CreateCouponCodeErrors, ThrowOnError, "fields">;
/**
 * Delete Coupon Code
 *
 * Deletes a coupon code specified by the given identifier synchronously. If a profile has been assigned to the
 * coupon code, an exception will be raised<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `coupon-codes:write`
 */
declare const deleteCouponCode: <ThrowOnError extends boolean = false>(options: Options<DeleteCouponCodeData, ThrowOnError>) => RequestResult<DeleteCouponCodeResponses, DeleteCouponCodeErrors, ThrowOnError, "fields">;
/**
 * Get Coupon Code
 *
 * Returns a Coupon Code specified by the given identifier.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `coupon-codes:read`
 */
declare const getCouponCode: <ThrowOnError extends boolean = false>(options: Options<GetCouponCodeData, ThrowOnError>) => RequestResult<GetCouponCodeResponses, GetCouponCodeErrors, ThrowOnError, "fields">;
/**
 * Update Coupon Code
 *
 * Updates a coupon code specified by the given identifier synchronously. We allow updating the 'status' and
 * 'expires_at' of coupon codes.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `coupon-codes:write`
 */
declare const updateCouponCode: <ThrowOnError extends boolean = false>(options: Options<UpdateCouponCodeData, ThrowOnError>) => RequestResult<UpdateCouponCodeResponses, UpdateCouponCodeErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Coupon Code Jobs
 *
 * Get all coupon code bulk create jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupon-codes:read`
 */
declare const getBulkCreateCouponCodeJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateCouponCodeJobsData, ThrowOnError>) => RequestResult<GetBulkCreateCouponCodeJobsResponses, GetBulkCreateCouponCodeJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Coupon Codes
 *
 * Create a coupon-code-bulk-create-job to bulk create a list of coupon codes.
 *
 * Max number of coupon codes per job we allow for is 1000.
 * Max number of jobs queued at once we allow for is 100.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupon-codes:write`
 */
declare const bulkCreateCouponCodes: <ThrowOnError extends boolean = false>(options: Options<BulkCreateCouponCodesData, ThrowOnError>) => RequestResult<BulkCreateCouponCodesResponses, BulkCreateCouponCodesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Create Coupon Codes Job
 *
 * Get a coupon code bulk create job with the given job ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupon-codes:read`
 */
declare const getBulkCreateCouponCodesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkCreateCouponCodesJobData, ThrowOnError>) => RequestResult<GetBulkCreateCouponCodesJobResponses, GetBulkCreateCouponCodesJobErrors, ThrowOnError, "fields">;
/**
 * Get Coupon For Coupon Code
 *
 * Get the coupon associated with a given coupon code ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupons:read`
 */
declare const getCouponForCouponCode: <ThrowOnError extends boolean = false>(options: Options<GetCouponForCouponCodeData, ThrowOnError>) => RequestResult<GetCouponForCouponCodeResponses, GetCouponForCouponCodeErrors, ThrowOnError, "fields">;
/**
 * Get Coupon ID for Coupon Code
 *
 * Gets the coupon relationship associated with the given coupon code id<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupons:read`
 */
declare const getCouponIdForCouponCode: <ThrowOnError extends boolean = false>(options: Options<GetCouponIdForCouponCodeData, ThrowOnError>) => RequestResult<GetCouponIdForCouponCodeResponses, GetCouponIdForCouponCodeErrors, ThrowOnError, "fields">;
/**
 * Get Coupon Codes for Coupon
 *
 * Gets a list of coupon codes associated with the given coupon id<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupon-codes:read`
 */
declare const getCouponCodesForCoupon: <ThrowOnError extends boolean = false>(options: Options<GetCouponCodesForCouponData, ThrowOnError>) => RequestResult<GetCouponCodesForCouponResponses, GetCouponCodesForCouponErrors, ThrowOnError, "fields">;
/**
 * Get Coupon Code IDs for Coupon
 *
 * Gets a list of coupon code relationships associated with the given coupon id<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `coupon-codes:read`
 */
declare const getCouponCodeIdsForCoupon: <ThrowOnError extends boolean = false>(options: Options<GetCouponCodeIdsForCouponData, ThrowOnError>) => RequestResult<GetCouponCodeIdsForCouponResponses, GetCouponCodeIdsForCouponErrors, ThrowOnError, "fields">;
/**
 * Get Data Sources
 *
 * Get all data sources in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `custom-objects:read`
 */
declare const getDataSources: <ThrowOnError extends boolean = false>(options: Options<GetDataSourcesData, ThrowOnError>) => RequestResult<GetDataSourcesResponses, GetDataSourcesErrors, ThrowOnError, "fields">;
/**
 * Create Data Source
 *
 * Create a new data source in an account<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `custom-objects:write`
 */
declare const createDataSource: <ThrowOnError extends boolean = false>(options: Options<CreateDataSourceData, ThrowOnError>) => RequestResult<CreateDataSourceResponses, CreateDataSourceErrors, ThrowOnError, "fields">;
/**
 * Delete Data Source
 *
 * Delete a data source in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `custom-objects:write`
 */
declare const deleteDataSource: <ThrowOnError extends boolean = false>(options: Options<DeleteDataSourceData, ThrowOnError>) => RequestResult<DeleteDataSourceResponses, DeleteDataSourceErrors, ThrowOnError, "fields">;
/**
 * Get Data Source
 *
 * Retrieve a data source in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `custom-objects:read`
 */
declare const getDataSource: <ThrowOnError extends boolean = false>(options: Options<GetDataSourceData, ThrowOnError>) => RequestResult<GetDataSourceResponses, GetDataSourceErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Data Source Records
 *
 * Create a bulk data source record import job to create a batch of records.
 *
 * Accepts up to 500 records per request. The maximum allowed payload size is 4MB. The maximum allowed payload size per-record is 512KB.
 *
 * To learn more, see our [Custom Objects API overview](https://developers.klaviyo.com/en/reference/custom_objects_api_overview).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `custom-objects:write`
 */
declare const bulkCreateDataSourceRecords: <ThrowOnError extends boolean = false>(options: Options<BulkCreateDataSourceRecordsData, ThrowOnError>) => RequestResult<BulkCreateDataSourceRecordsResponses, BulkCreateDataSourceRecordsErrors, ThrowOnError, "fields">;
/**
 * Create Data Source Record
 *
 * Create a data source record import job to create a single record.
 *
 * The maximum allowed payload size per-record is 512KB.
 *
 * To learn more, see our [Custom Objects API overview](https://developers.klaviyo.com/en/reference/custom_objects_api_overview).<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `custom-objects:write`
 */
declare const createDataSourceRecord: <ThrowOnError extends boolean = false>(options: Options<CreateDataSourceRecordData, ThrowOnError>) => RequestResult<CreateDataSourceRecordResponses, CreateDataSourceRecordErrors, ThrowOnError, "fields">;
/**
 * Request Profile Deletion
 *
 * Request a deletion for the profiles corresponding to one of the following identifiers: `email`, `phone_number`, or `id`. If multiple identifiers are provided, we will return an error.
 *
 * All profiles that match the provided identifier will be deleted.
 *
 * The deletion occurs asynchronously; however, once it has completed, the deleted profile will appear on the [Deleted Profiles page](https://www.klaviyo.com/account/deleted).
 *
 * For more information on the deletion process, please refer to our [Help Center docs on how to handle GDPR and CCPA deletion requests](https://help.klaviyo.com/hc/en-us/articles/360004217631-How-to-Handle-GDPR-Requests#record-gdpr-and-ccpa%20%20-deletion-requests2).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `data-privacy:write`
 */
declare const requestProfileDeletion: <ThrowOnError extends boolean = false>(options: Options<RequestProfileDeletionData, ThrowOnError>) => RequestResult<RequestProfileDeletionResponses, RequestProfileDeletionErrors, ThrowOnError, "fields">;
/**
 * Get Events
 *
 * Get all events in an account
 *
 * Requests can be sorted by the following fields:
 * `datetime`, `timestamp`
 *
 * [Custom metrics](https://developers.klaviyo.com/en/reference/custom_metrics_api_overview) are not supported in the `metric_id` filter.
 *
 * Returns a maximum of 200 events per page.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:read`
 */
declare const getEvents: <ThrowOnError extends boolean = false>(options: Options<GetEventsData, ThrowOnError>) => RequestResult<GetEventsResponses, GetEventsErrors, ThrowOnError, "fields">;
/**
 * Create Event
 *
 * Create a new event to track a profile's activity.
 *
 * Note that this endpoint allows you to create a new profile or update an existing profile's properties.
 *
 * At a minimum, profile and metric objects should include at least one profile identifier (e.g., `id`, `email`, or `phone_number`) and the metric `name`, respectively.
 *
 * Successful response indicates that the event was validated and submitted for processing, but does not guarantee that processing is complete.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:write`
 */
declare const createEvent: <ThrowOnError extends boolean = false>(options: Options<CreateEventData, ThrowOnError>) => RequestResult<CreateEventResponses, CreateEventErrors, ThrowOnError, "fields">;
/**
 * Get Event
 *
 * Get an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `events:read`
 */
declare const getEvent: <ThrowOnError extends boolean = false>(options: Options<GetEventData, ThrowOnError>) => RequestResult<GetEventResponses, GetEventErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Events
 *
 * Create a batch of events for one or more profiles.
 *
 * Note that this endpoint allows you to create new profiles or update existing profile properties.
 *
 * At a minimum, profile and metric objects should include at least one profile identifier (e.g., `id`, `email`, or `phone_number`) and the metric `name`, respectively.
 *
 * Accepts up to 1,000 events per request. The maximum allowed payload size is 5MB. A single string cannot exceed 100KB.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `events:write`
 */
declare const bulkCreateEvents: <ThrowOnError extends boolean = false>(options: Options<BulkCreateEventsData, ThrowOnError>) => RequestResult<BulkCreateEventsResponses, BulkCreateEventsErrors, ThrowOnError, "fields">;
/**
 * Get Metric for Event
 *
 * Get the metric for an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:read`
 * `metrics:read`
 */
declare const getMetricForEvent: <ThrowOnError extends boolean = false>(options: Options<GetMetricForEventData, ThrowOnError>) => RequestResult<GetMetricForEventResponses, GetMetricForEventErrors, ThrowOnError, "fields">;
/**
 * Get Metric ID for Event
 *
 * Get a list of related Metrics for an Event<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:read`
 * `metrics:read`
 */
declare const getMetricIdForEvent: <ThrowOnError extends boolean = false>(options: Options<GetMetricIdForEventData, ThrowOnError>) => RequestResult<GetMetricIdForEventResponses, GetMetricIdForEventErrors, ThrowOnError, "fields">;
/**
 * Get Profile for Event
 *
 * Get the profile associated with an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:read`
 * `profiles:read`
 */
declare const getProfileForEvent: <ThrowOnError extends boolean = false>(options: Options<GetProfileForEventData, ThrowOnError>) => RequestResult<GetProfileForEventResponses, GetProfileForEventErrors, ThrowOnError, "fields">;
/**
 * Get Profile ID for Event
 *
 * Get profile [relationships](https://developers.klaviyo.com/en/reference/api_overview#relationships) for an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:read`
 * `profiles:read`
 */
declare const getProfileIdForEvent: <ThrowOnError extends boolean = false>(options: Options<GetProfileIdForEventData, ThrowOnError>) => RequestResult<GetProfileIdForEventResponses, GetProfileIdForEventErrors, ThrowOnError, "fields">;
/**
 * Get Flows
 *
 * Get all flows in an account.
 *
 * Returns a maximum of 50 flows per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlows: <ThrowOnError extends boolean = false>(options: Options<GetFlowsData, ThrowOnError>) => RequestResult<GetFlowsResponses, GetFlowsErrors, ThrowOnError, "fields">;
/**
 * Create Flow
 *
 * Create a new flow using an encoded flow definition.
 *
 * New objects within the flow definition, such as actions, will need to use a
 * `temporary_id` field for identification. These will be replaced with traditional `id` fields
 * after successful creation.
 *
 * A successful request will return the new definition to you.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `100/d`
 *
 * **Scopes:**
 * `flows:write`
 */
declare const createFlow: <ThrowOnError extends boolean = false>(options: Options<CreateFlowData, ThrowOnError>) => RequestResult<CreateFlowResponses, CreateFlowErrors, ThrowOnError, "fields">;
/**
 * Delete Flow
 *
 * Delete a flow with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:write`
 */
declare const deleteFlow: <ThrowOnError extends boolean = false>(options: Options<DeleteFlowData, ThrowOnError>) => RequestResult<DeleteFlowResponses, DeleteFlowErrors, ThrowOnError, "fields">;
/**
 * Get Flow
 *
 * Get a flow with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlow: <ThrowOnError extends boolean = false>(options: Options<GetFlowData, ThrowOnError>) => RequestResult<GetFlowResponses, GetFlowErrors, ThrowOnError, "fields">;
/**
 * Update Flow Status
 *
 * Update the status of a flow with the given flow ID, and all actions in that flow.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:write`
 */
declare const updateFlow: <ThrowOnError extends boolean = false>(options: Options<UpdateFlowData, ThrowOnError>) => RequestResult<UpdateFlowResponses, UpdateFlowErrors, ThrowOnError, "fields">;
/**
 * Get Flow Action
 *
 * Get a flow action from a flow with the given flow action ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlowAction: <ThrowOnError extends boolean = false>(options: Options<GetFlowActionData, ThrowOnError>) => RequestResult<GetFlowActionResponses, GetFlowActionErrors, ThrowOnError, "fields">;
/**
 * Update Flow Action
 *
 * Update a flow action.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:write`
 */
declare const updateFlowAction: <ThrowOnError extends boolean = false>(options: Options<UpdateFlowActionData, ThrowOnError>) => RequestResult<UpdateFlowActionResponses, UpdateFlowActionErrors, ThrowOnError, "fields">;
/**
 * Get Flow Message
 *
 * Get a flow message from a flow with the given flow message ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlowMessage: <ThrowOnError extends boolean = false>(options: Options<GetFlowMessageData, ThrowOnError>) => RequestResult<GetFlowMessageResponses, GetFlowMessageErrors, ThrowOnError, "fields">;
/**
 * Get Actions for Flow
 *
 * Get all flow actions associated with the given flow ID.
 *
 * Returns a maximum of 50 flows per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getActionsForFlow: <ThrowOnError extends boolean = false>(options: Options<GetActionsForFlowData, ThrowOnError>) => RequestResult<GetActionsForFlowResponses, GetActionsForFlowErrors, ThrowOnError, "fields">;
/**
 * Get Action IDs for Flow
 *
 * Get all [relationships](https://developers.klaviyo.com/en/reference/api_overview#relationships) for flow actions associated with the given flow ID.
 *
 * Returns a maximum of 100 flows per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getActionIdsForFlow: <ThrowOnError extends boolean = false>(options: Options<GetActionIdsForFlowData, ThrowOnError>) => RequestResult<GetActionIdsForFlowResponses, GetActionIdsForFlowErrors, ThrowOnError, "fields">;
/**
 * Get Tags for Flow
 *
 * Return all tags associated with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `tags:read`
 */
declare const getTagsForFlow: <ThrowOnError extends boolean = false>(options: Options<GetTagsForFlowData, ThrowOnError>) => RequestResult<GetTagsForFlowResponses, GetTagsForFlowErrors, ThrowOnError, "fields">;
/**
 * Get Tag IDs for Flow
 *
 * Return the tag IDs of all tags associated with the given flow.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `tags:read`
 */
declare const getTagIdsForFlow: <ThrowOnError extends boolean = false>(options: Options<GetTagIdsForFlowData, ThrowOnError>) => RequestResult<GetTagIdsForFlowResponses, GetTagIdsForFlowErrors, ThrowOnError, "fields">;
/**
 * Get Flow for Flow Action
 *
 * Get the flow associated with the given action ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlowForFlowAction: <ThrowOnError extends boolean = false>(options: Options<GetFlowForFlowActionData, ThrowOnError>) => RequestResult<GetFlowForFlowActionResponses, GetFlowForFlowActionErrors, ThrowOnError, "fields">;
/**
 * Get Flow ID for Flow Action
 *
 * Get the flow associated with the given action ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlowIdForFlowAction: <ThrowOnError extends boolean = false>(options: Options<GetFlowIdForFlowActionData, ThrowOnError>) => RequestResult<GetFlowIdForFlowActionResponses, GetFlowIdForFlowActionErrors, ThrowOnError, "fields">;
/**
 * Get Messages For Flow Action
 *
 * Get all flow messages associated with the given flow action ID.
 *
 * Returns a maximum of 50 flow message relationships per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getFlowActionMessages: <ThrowOnError extends boolean = false>(options: Options<GetFlowActionMessagesData, ThrowOnError>) => RequestResult<GetFlowActionMessagesResponses, GetFlowActionMessagesErrors, ThrowOnError, "fields">;
/**
 * Get Message IDs for Flow Action
 *
 * Get all relationships for flow messages associated with the given flow action ID.
 *
 * Returns a maximum of 50 flow message relationships per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getMessageIdsForFlowAction: <ThrowOnError extends boolean = false>(options: Options<GetMessageIdsForFlowActionData, ThrowOnError>) => RequestResult<GetMessageIdsForFlowActionResponses, GetMessageIdsForFlowActionErrors, ThrowOnError, "fields">;
/**
 * Get Action for Flow Message
 *
 * Get the flow action for a flow message with the given message ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getActionForFlowMessage: <ThrowOnError extends boolean = false>(options: Options<GetActionForFlowMessageData, ThrowOnError>) => RequestResult<GetActionForFlowMessageResponses, GetActionForFlowMessageErrors, ThrowOnError, "fields">;
/**
 * Get Action ID for Flow Message
 *
 * Get the [relationship](https://developers.klaviyo.com/en/reference/api_overview#relationships) for a flow message's flow action, given the flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const getActionIdForFlowMessage: <ThrowOnError extends boolean = false>(options: Options<GetActionIdForFlowMessageData, ThrowOnError>) => RequestResult<GetActionIdForFlowMessageResponses, GetActionIdForFlowMessageErrors, ThrowOnError, "fields">;
/**
 * Get Template for Flow Message
 *
 * Return the related template<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const getTemplateForFlowMessage: <ThrowOnError extends boolean = false>(options: Options<GetTemplateForFlowMessageData, ThrowOnError>) => RequestResult<GetTemplateForFlowMessageResponses, GetTemplateForFlowMessageErrors, ThrowOnError, "fields">;
/**
 * Get Template ID for Flow Message
 *
 * Returns the ID of the related template<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const getTemplateIdForFlowMessage: <ThrowOnError extends boolean = false>(options: Options<GetTemplateIdForFlowMessageData, ThrowOnError>) => RequestResult<GetTemplateIdForFlowMessageResponses, GetTemplateIdForFlowMessageErrors, ThrowOnError, "fields">;
/**
 * Get Forms
 *
 * Get all forms in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getForms: <ThrowOnError extends boolean = false>(options: Options<GetFormsData, ThrowOnError>) => RequestResult<GetFormsResponses, GetFormsErrors, ThrowOnError, "fields">;
/**
 * Create Form
 *
 * Create a new form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:write`
 */
declare const createForm: <ThrowOnError extends boolean = false>(options: Options<CreateFormData, ThrowOnError>) => RequestResult<CreateFormResponses, CreateFormErrors, ThrowOnError, "fields">;
/**
 * Delete Form
 *
 * Delete a given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:write`
 */
declare const deleteForm: <ThrowOnError extends boolean = false>(options: Options<DeleteFormData, ThrowOnError>) => RequestResult<DeleteFormResponses, DeleteFormErrors, ThrowOnError, "fields">;
/**
 * Get Form
 *
 * Get the form with the given ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getForm: <ThrowOnError extends boolean = false>(options: Options<GetFormData, ThrowOnError>) => RequestResult<GetFormResponses, GetFormErrors, ThrowOnError, "fields">;
/**
 * Get Form Version
 *
 * Get the form version with the given ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getFormVersion: <ThrowOnError extends boolean = false>(options: Options<GetFormVersionData, ThrowOnError>) => RequestResult<GetFormVersionResponses, GetFormVersionErrors, ThrowOnError, "fields">;
/**
 * Get Versions for Form
 *
 * Get the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getVersionsForForm: <ThrowOnError extends boolean = false>(options: Options<GetVersionsForFormData, ThrowOnError>) => RequestResult<GetVersionsForFormResponses, GetVersionsForFormErrors, ThrowOnError, "fields">;
/**
 * Get Version IDs for Form
 *
 * Get the IDs of the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getVersionIdsForForm: <ThrowOnError extends boolean = false>(options: Options<GetVersionIdsForFormData, ThrowOnError>) => RequestResult<GetVersionIdsForFormResponses, GetVersionIdsForFormErrors, ThrowOnError, "fields">;
/**
 * Get Form for Form Version
 *
 * Get the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getFormForFormVersion: <ThrowOnError extends boolean = false>(options: Options<GetFormForFormVersionData, ThrowOnError>) => RequestResult<GetFormForFormVersionResponses, GetFormForFormVersionErrors, ThrowOnError, "fields">;
/**
 * Get Form ID for Form Version
 *
 * Get the ID of the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const getFormIdForFormVersion: <ThrowOnError extends boolean = false>(options: Options<GetFormIdForFormVersionData, ThrowOnError>) => RequestResult<GetFormIdForFormVersionResponses, GetFormIdForFormVersionErrors, ThrowOnError, "fields">;
/**
 * Get Images
 *
 * Get all images in an account.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `images:read`
 */
declare const getImages: <ThrowOnError extends boolean = false>(options: Options<GetImagesData, ThrowOnError>) => RequestResult<GetImagesResponses, GetImagesErrors, ThrowOnError, "fields">;
/**
 * Upload Image From URL
 *
 * Import an image from a url or data uri.
 *
 * If you want to upload an image from a file, use the Upload Image From File endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d`
 *
 * **Scopes:**
 * `images:write`
 */
declare const uploadImageFromUrl: <ThrowOnError extends boolean = false>(options: Options<UploadImageFromUrlData, ThrowOnError>) => RequestResult<UploadImageFromUrlResponses, UploadImageFromUrlErrors, ThrowOnError, "fields">;
/**
 * Get Image
 *
 * Get the image with the given image ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `images:read`
 */
declare const getImage: <ThrowOnError extends boolean = false>(options: Options<GetImageData, ThrowOnError>) => RequestResult<GetImageResponses, GetImageErrors, ThrowOnError, "fields">;
/**
 * Update Image
 *
 * Update the image with the given image ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `images:write`
 */
declare const updateImage: <ThrowOnError extends boolean = false>(options: Options<UpdateImageData, ThrowOnError>) => RequestResult<UpdateImageResponses, UpdateImageErrors, ThrowOnError, "fields">;
/**
 * Upload Image From File
 *
 * Upload an image from a file.
 *
 * If you want to import an image from an existing url or a data uri, use the Upload Image From URL endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d`
 *
 * **Scopes:**
 * `images:write`
 */
declare const uploadImageFromFile: <ThrowOnError extends boolean = false>(options: Options<UploadImageFromFileData, ThrowOnError>) => RequestResult<UploadImageFromFileResponses, UploadImageFromFileErrors, ThrowOnError, "fields">;
/**
 * Get Lists
 *
 * Get all lists in an account.
 *
 * Filter to request a subset of all lists. Lists can be filtered by `id`, `name`, `created`, and `updated` fields.
 *
 * Returns a maximum of 10 results per page.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `lists:read`
 */
declare const getLists: <ThrowOnError extends boolean = false>(options: Options<GetListsData, ThrowOnError>) => RequestResult<GetListsResponses, GetListsErrors, ThrowOnError, "fields">;
/**
 * Create List
 *
 * Create a new list.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`<br>Daily: `150/d`
 *
 * **Scopes:**
 * `lists:write`
 */
declare const createList: <ThrowOnError extends boolean = false>(options: Options<CreateListData, ThrowOnError>) => RequestResult<CreateListResponses, CreateListErrors, ThrowOnError, "fields">;
/**
 * Delete List
 *
 * Delete a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:write`
 */
declare const deleteList: <ThrowOnError extends boolean = false>(options: Options<DeleteListData, ThrowOnError>) => RequestResult<DeleteListResponses, DeleteListErrors, ThrowOnError, "fields">;
/**
 * Get List
 *
 * Get a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `additional-fields[list]=profile_count` parameter in your API request:<br>Burst: `1/s`<br>Steady: `15/m`<br><br>To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-01-15/docs/rate_limits_and_error_handling) guide.
 *
 * **Scopes:**
 * `lists:read`
 */
declare const getList: <ThrowOnError extends boolean = false>(options: Options<GetListData, ThrowOnError>) => RequestResult<GetListResponses, GetListErrors, ThrowOnError, "fields">;
/**
 * Update List
 *
 * Update the name of a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:write`
 */
declare const updateList: <ThrowOnError extends boolean = false>(options: Options<UpdateListData, ThrowOnError>) => RequestResult<UpdateListResponses, UpdateListErrors, ThrowOnError, "fields">;
/**
 * Get Tags for List
 *
 * Return all tags associated with the given list ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:read`
 * `tags:read`
 */
declare const getTagsForList: <ThrowOnError extends boolean = false>(options: Options<GetTagsForListData, ThrowOnError>) => RequestResult<GetTagsForListResponses, GetTagsForListErrors, ThrowOnError, "fields">;
/**
 * Get Tag IDs for List
 *
 * Return all tags associated with the given list ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:read`
 * `tags:read`
 */
declare const getTagIdsForList: <ThrowOnError extends boolean = false>(options: Options<GetTagIdsForListData, ThrowOnError>) => RequestResult<GetTagIdsForListResponses, GetTagIdsForListErrors, ThrowOnError, "fields">;
/**
 * Get Profiles for List
 *
 * Get all profiles within a list with the given list ID.
 *
 * Filter to request a subset of all profiles. Profiles can be filtered by `email`, `phone_number`, `push_token`, and `joined_group_at` fields. Profiles can be sorted by the following fields, in ascending and descending order: `joined_group_at`<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `additional-fields[profile]=predictive_analytics` parameter in your API request:<br>Burst: `10/s`<br>Steady: `150/m`<br><br>To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-01-15/docs/rate_limits_and_error_handling) guide.
 *
 * **Scopes:**
 * `lists:read`
 * `profiles:read`
 */
declare const getProfilesForList: <ThrowOnError extends boolean = false>(options: Options<GetProfilesForListData, ThrowOnError>) => RequestResult<GetProfilesForListResponses, GetProfilesForListErrors, ThrowOnError, "fields">;
/**
 * Remove Profiles from List
 *
 * Remove a profile from a list with the given list ID.
 *
 * The provided profile will no longer receive marketing from this particular list once removed.
 *
 * Removing a profile from a list will not impact the profile's [consent](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api) status or subscription status in general.
 * To update a profile's subscription status, please use the [Unsubscribe Profiles endpoint](https://developers.klaviyo.com/en/reference/unsubscribe_profiles).
 *
 * This endpoint accepts a maximum of 1000 profiles per call.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:write`
 * `profiles:write`
 */
declare const removeProfilesFromList: <ThrowOnError extends boolean = false>(options: Options<RemoveProfilesFromListData, ThrowOnError>) => RequestResult<RemoveProfilesFromListResponses, RemoveProfilesFromListErrors, ThrowOnError, "fields">;
/**
 * Get Profile IDs for List
 *
 * Get profile membership [relationships](https://developers.klaviyo.com/en/reference/api_overview#relationships) for a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `additional-fields[profile]=predictive_analytics` parameter in your API request:<br>Burst: `10/s`<br>Steady: `150/m`<br><br>To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-01-15/docs/rate_limits_and_error_handling) guide.
 *
 * **Scopes:**
 * `lists:read`
 * `profiles:read`
 */
declare const getProfileIdsForList: <ThrowOnError extends boolean = false>(options: Options<GetProfileIdsForListData, ThrowOnError>) => RequestResult<GetProfileIdsForListResponses, GetProfileIdsForListErrors, ThrowOnError, "fields">;
/**
 * Add Profiles to List
 *
 * Add a profile to a list with the given list ID.
 *
 * It is recommended that you use the [Subscribe Profiles endpoint](https://developers.klaviyo.com/en/reference/subscribe_profiles) if you're trying to give a profile [consent](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api) to receive email marketing, SMS marketing, or both.
 *
 * This endpoint accepts a maximum of 1000 profiles per call.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:write`
 * `profiles:write`
 */
declare const addProfilesToList: <ThrowOnError extends boolean = false>(options: Options<AddProfilesToListData, ThrowOnError>) => RequestResult<AddProfilesToListResponses, AddProfilesToListErrors, ThrowOnError, "fields">;
/**
 * Get Flows Triggered by List
 *
 * Get all flows where the given list ID is being used as the trigger.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `lists:read`
 */
declare const getFlowsTriggeredByList: <ThrowOnError extends boolean = false>(options: Options<GetFlowsTriggeredByListData, ThrowOnError>) => RequestResult<GetFlowsTriggeredByListResponses, GetFlowsTriggeredByListErrors, ThrowOnError, "fields">;
/**
 * Get IDs for Flows Triggered by List
 *
 * Get the IDs of all flows where the given list is being used as the trigger.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `lists:read`
 */
declare const getIdsForFlowsTriggeredByList: <ThrowOnError extends boolean = false>(options: Options<GetIdsForFlowsTriggeredByListData, ThrowOnError>) => RequestResult<GetIdsForFlowsTriggeredByListResponses, GetIdsForFlowsTriggeredByListErrors, ThrowOnError, "fields">;
/**
 * Get Metrics
 *
 * Get all metrics in an account.
 *
 * Requests can be filtered by the following fields:
 * integration `name`, integration `category`
 *
 * Returns a maximum of 200 results per page.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetrics: <ThrowOnError extends boolean = false>(options: Options<GetMetricsData, ThrowOnError>) => RequestResult<GetMetricsResponses, GetMetricsErrors, ThrowOnError, "fields">;
/**
 * Get Metric
 *
 * Get a metric with the given metric ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetric: <ThrowOnError extends boolean = false>(options: Options<GetMetricData, ThrowOnError>) => RequestResult<GetMetricResponses, GetMetricErrors, ThrowOnError, "fields">;
/**
 * Get Metric Property
 *
 * Get a metric property with the given metric property ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricProperty: <ThrowOnError extends boolean = false>(options: Options<GetMetricPropertyData, ThrowOnError>) => RequestResult<GetMetricPropertyResponses, GetMetricPropertyErrors, ThrowOnError, "fields">;
/**
 * Get Custom Metrics
 *
 * Get all custom metrics in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getCustomMetrics: <ThrowOnError extends boolean = false>(options: Options<GetCustomMetricsData, ThrowOnError>) => RequestResult<GetCustomMetricsResponses, GetCustomMetricsErrors, ThrowOnError, "fields">;
/**
 * Create Custom Metric
 *
 * Create a new custom metric.
 *
 * Custom metric objects must include a `name` and `definition`.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `15/d`
 *
 * **Scopes:**
 * `metrics:write`
 */
declare const createCustomMetric: <ThrowOnError extends boolean = false>(options: Options<CreateCustomMetricData, ThrowOnError>) => RequestResult<CreateCustomMetricResponses, CreateCustomMetricErrors, ThrowOnError, "fields">;
/**
 * Delete Custom Metric
 *
 * Delete a custom metric with the given custom metric ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:write`
 */
declare const deleteCustomMetric: <ThrowOnError extends boolean = false>(options: Options<DeleteCustomMetricData, ThrowOnError>) => RequestResult<DeleteCustomMetricResponses, DeleteCustomMetricErrors, ThrowOnError, "fields">;
/**
 * Get Custom Metric
 *
 * Get a custom metric with the given custom metric ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getCustomMetric: <ThrowOnError extends boolean = false>(options: Options<GetCustomMetricData, ThrowOnError>) => RequestResult<GetCustomMetricResponses, GetCustomMetricErrors, ThrowOnError, "fields">;
/**
 * Update Custom Metric
 *
 * Update a custom metric with the given custom metric ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `15/d`
 *
 * **Scopes:**
 * `metrics:write`
 */
declare const updateCustomMetric: <ThrowOnError extends boolean = false>(options: Options<UpdateCustomMetricData, ThrowOnError>) => RequestResult<UpdateCustomMetricResponses, UpdateCustomMetricErrors, ThrowOnError, "fields">;
/**
 * Get Mapped Metrics
 *
 * Get all mapped metrics in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMappedMetrics: <ThrowOnError extends boolean = false>(options: Options<GetMappedMetricsData, ThrowOnError>) => RequestResult<GetMappedMetricsResponses, GetMappedMetricsErrors, ThrowOnError, "fields">;
/**
 * Get Mapped Metric
 *
 * Get the mapped metric with the given ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMappedMetric: <ThrowOnError extends boolean = false>(options: Options<GetMappedMetricData, ThrowOnError>) => RequestResult<GetMappedMetricResponses, GetMappedMetricErrors, ThrowOnError, "fields">;
/**
 * Update Mapped Metric
 *
 * Update the mapped metric with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `30/d`
 *
 * **Scopes:**
 * `metrics:write`
 */
declare const updateMappedMetric: <ThrowOnError extends boolean = false>(options: Options<UpdateMappedMetricData, ThrowOnError>) => RequestResult<UpdateMappedMetricResponses, UpdateMappedMetricErrors, ThrowOnError, "fields">;
/**
 * Query Metric Aggregates
 *
 * Query and aggregate event data associated with a metric, including native Klaviyo metrics, integration-specific metrics, and custom events (not to be confused with [custom metrics](https://developers.klaviyo.com/en/reference/custom_metrics_api_overview), which are not supported at this time). Queries must be passed in the JSON body of your `POST` request.
 *
 * To request campaign and flow performance data that matches the data shown in Klaviyo's UI, we recommend the [Reporting API](https://developers.klaviyo.com/en/reference/reporting_api_overview).
 *
 * Results can be filtered and grouped by time, event, or profile dimensions.
 *
 * To learn more about how to use this endpoint, check out our new [Using the Query Metric Aggregates Endpoint guide](https://developers.klaviyo.com/en/docs/using-the-query-metric-aggregates-endpoint).
 *
 * For a comprehensive list of request body parameters, native Klaviyo metrics, and their associated attributes for grouping and filtering, please refer to the [metrics attributes guide](https://developers.klaviyo.com/en/docs/supported_metrics_and_attributes).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const queryMetricAggregates: <ThrowOnError extends boolean = false>(options: Options<QueryMetricAggregatesData, ThrowOnError>) => RequestResult<QueryMetricAggregatesResponses, QueryMetricAggregatesErrors, ThrowOnError, "fields">;
/**
 * Get Flows Triggered by Metric
 *
 * Get all flows where the given metric is being used as the trigger.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `flows:read`
 * `metrics:read`
 */
declare const getFlowsTriggeredByMetric: <ThrowOnError extends boolean = false>(options: Options<GetFlowsTriggeredByMetricData, ThrowOnError>) => RequestResult<GetFlowsTriggeredByMetricResponses, GetFlowsTriggeredByMetricErrors, ThrowOnError, "fields">;
/**
 * Get IDs for Flows Triggered by Metric
 *
 * Get the IDs of all flows where the given metric is being used as the trigger.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `flows:read`
 * `metrics:read`
 */
declare const getIdsForFlowsTriggeredByMetric: <ThrowOnError extends boolean = false>(options: Options<GetIdsForFlowsTriggeredByMetricData, ThrowOnError>) => RequestResult<GetIdsForFlowsTriggeredByMetricResponses, GetIdsForFlowsTriggeredByMetricErrors, ThrowOnError, "fields">;
/**
 * Get Properties for Metric
 *
 * Get the metric properties for the given metric ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getPropertiesForMetric: <ThrowOnError extends boolean = false>(options: Options<GetPropertiesForMetricData, ThrowOnError>) => RequestResult<GetPropertiesForMetricResponses, GetPropertiesForMetricErrors, ThrowOnError, "fields">;
/**
 * Get Property IDs for Metric
 *
 * Get the IDs of metric properties for the given metric.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getPropertyIdsForMetric: <ThrowOnError extends boolean = false>(options: Options<GetPropertyIdsForMetricData, ThrowOnError>) => RequestResult<GetPropertyIdsForMetricResponses, GetPropertyIdsForMetricErrors, ThrowOnError, "fields">;
/**
 * Get Metric for Metric Property
 *
 * Get the metric for the given metric property ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricForMetricProperty: <ThrowOnError extends boolean = false>(options: Options<GetMetricForMetricPropertyData, ThrowOnError>) => RequestResult<GetMetricForMetricPropertyResponses, GetMetricForMetricPropertyErrors, ThrowOnError, "fields">;
/**
 * Get Metric ID for Metric Property
 *
 * Get the ID of the metric for the given metric property.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricIdForMetricProperty: <ThrowOnError extends boolean = false>(options: Options<GetMetricIdForMetricPropertyData, ThrowOnError>) => RequestResult<GetMetricIdForMetricPropertyResponses, GetMetricIdForMetricPropertyErrors, ThrowOnError, "fields">;
/**
 * Get Metrics for Custom Metric
 *
 * Get all metrics for the given custom metric ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricsForCustomMetric: <ThrowOnError extends boolean = false>(options: Options<GetMetricsForCustomMetricData, ThrowOnError>) => RequestResult<GetMetricsForCustomMetricResponses, GetMetricsForCustomMetricErrors, ThrowOnError, "fields">;
/**
 * Get Metric IDs for Custom Metric
 *
 * Get all metrics for the given custom metric ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricIdsForCustomMetric: <ThrowOnError extends boolean = false>(options: Options<GetMetricIdsForCustomMetricData, ThrowOnError>) => RequestResult<GetMetricIdsForCustomMetricResponses, GetMetricIdsForCustomMetricErrors, ThrowOnError, "fields">;
/**
 * Get Metric for Mapped Metric
 *
 * Get the metric for the given mapped metric ID (if applicable).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricForMappedMetric: <ThrowOnError extends boolean = false>(options: Options<GetMetricForMappedMetricData, ThrowOnError>) => RequestResult<GetMetricForMappedMetricResponses, GetMetricForMappedMetricErrors, ThrowOnError, "fields">;
/**
 * Get Metric ID for Mapped Metric
 *
 * Get the ID of the metric for the given mapped metric.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getMetricIdForMappedMetric: <ThrowOnError extends boolean = false>(options: Options<GetMetricIdForMappedMetricData, ThrowOnError>) => RequestResult<GetMetricIdForMappedMetricResponses, GetMetricIdForMappedMetricErrors, ThrowOnError, "fields">;
/**
 * Get Custom Metric for Mapped Metric
 *
 * Get the custom metric for the given mapped metric ID (if applicable).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getCustomMetricForMappedMetric: <ThrowOnError extends boolean = false>(options: Options<GetCustomMetricForMappedMetricData, ThrowOnError>) => RequestResult<GetCustomMetricForMappedMetricResponses, GetCustomMetricForMappedMetricErrors, ThrowOnError, "fields">;
/**
 * Get Custom Metric ID for Mapped Metric
 *
 * Get the ID of the custom metric for the given mapped metric.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `metrics:read`
 */
declare const getCustomMetricIdForMappedMetric: <ThrowOnError extends boolean = false>(options: Options<GetCustomMetricIdForMappedMetricData, ThrowOnError>) => RequestResult<GetCustomMetricIdForMappedMetricResponses, GetCustomMetricIdForMappedMetricErrors, ThrowOnError, "fields">;
/**
 * Get Profiles
 *
 * Get all profiles in an account.
 *
 * Profiles can be sorted by the following fields in ascending and descending order: `id`, `created`, `updated`, `email`, `subscriptions.email.marketing.suppression.timestamp`, `subscriptions.email.marketing.list_suppressions.timestamp`
 *
 * Use the `additional-fields` parameter to include subscriptions and predictive analytics data in your response.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `additional-fields[profile]=predictive_analytics` parameter in your API request:<br>Burst: `10/s`<br>Steady: `150/m`<br><br>To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-01-15/docs/rate_limits_and_error_handling) guide.
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getProfiles: <ThrowOnError extends boolean = false>(options: Options<GetProfilesData, ThrowOnError>) => RequestResult<GetProfilesResponses, GetProfilesErrors, ThrowOnError, "fields">;
/**
 * Create Profile
 *
 * Create a new profile.
 *
 * Use the `additional-fields` parameter to include subscriptions and predictive analytics data in your response.
 *
 * The maximum allowed payload size is 100KB.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:write`
 */
declare const createProfile: <ThrowOnError extends boolean = false>(options: Options<CreateProfileData, ThrowOnError>) => RequestResult<CreateProfileResponses, CreateProfileErrors, ThrowOnError, "fields">;
/**
 * Get Profile
 *
 * Get the profile with the given profile ID.
 *
 * Use the `additional-fields` parameter to include subscriptions and predictive analytics data in your response.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `include=list` parameter in your API request:<br>Burst: `1/s`<br>Steady: `15/m`<br><br>Rate limits when using the `include=segment` parameter in your API request:<br>Burst: `1/s`<br>Steady: `15/m`<br><br>To learn more about how the `include` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-01-15/docs/rate_limits_and_error_handling) guide.
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getProfile: <ThrowOnError extends boolean = false>(options: Options<GetProfileData, ThrowOnError>) => RequestResult<GetProfileResponses, GetProfileErrors, ThrowOnError, "fields">;
/**
 * Update Profile
 *
 * Update the profile with the given profile ID.
 *
 * Use the `additional-fields` parameter to include subscriptions and predictive analytics data in your response.
 *
 * Note that setting a field to `null` will clear out the field, whereas not including a field in your request will leave it unchanged.
 *
 * The maximum allowed payload size is 100KB.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:write`
 */
declare const updateProfile: <ThrowOnError extends boolean = false>(options: Options<UpdateProfileData, ThrowOnError>) => RequestResult<UpdateProfileResponses, UpdateProfileErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Import Profiles Jobs
 *
 * Get all bulk profile import jobs.
 *
 * Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:read`
 * `profiles:read`
 */
declare const getBulkImportProfilesJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkImportProfilesJobsData, ThrowOnError>) => RequestResult<GetBulkImportProfilesJobsResponses, GetBulkImportProfilesJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Import Profiles
 *
 * Create a bulk profile import job to create or update a batch of profiles.
 *
 * Accepts up to 10,000 profiles per request. The maximum allowed payload size is 5MB. The maximum allowed payload size per-profile is 100KB.
 *
 * To learn more, see our [Bulk Profile Import API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_bulk_profile_import_api).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:write`
 * `profiles:write`
 */
declare const bulkImportProfiles: <ThrowOnError extends boolean = false>(options: Options<BulkImportProfilesData, ThrowOnError>) => RequestResult<BulkImportProfilesResponses, BulkImportProfilesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Import Profiles Job
 *
 * Get a bulk profile import job with the given job ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:read`
 * `profiles:read`
 */
declare const getBulkImportProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkImportProfilesJobData, ThrowOnError>) => RequestResult<GetBulkImportProfilesJobResponses, GetBulkImportProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Suppress Profiles Jobs
 *
 * Get the status of all bulk profile suppression jobs.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `subscriptions:read`
 */
declare const getBulkSuppressProfilesJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkSuppressProfilesJobsData, ThrowOnError>) => RequestResult<GetBulkSuppressProfilesJobsResponses, GetBulkSuppressProfilesJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Suppress Profiles
 *
 * Manually suppress profiles by email address or specify a segment/list ID to suppress all current members of a segment/list.
 *
 * Suppressed profiles cannot receive email marketing, independent of their consent status. To learn more, see our guides on [email suppressions](https://help.klaviyo.com/hc/en-us/articles/115005246108#what-is-a-suppressed-profile-1) and [collecting consent](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api).
 *
 * Email address per request limit: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:write`
 * `subscriptions:write`
 */
declare const bulkSuppressProfiles: <ThrowOnError extends boolean = false>(options: Options<BulkSuppressProfilesData, ThrowOnError>) => RequestResult<BulkSuppressProfilesResponses, BulkSuppressProfilesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Suppress Profiles Job
 *
 * Get the bulk suppress profiles job with the given job ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `subscriptions:read`
 */
declare const getBulkSuppressProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkSuppressProfilesJobData, ThrowOnError>) => RequestResult<GetBulkSuppressProfilesJobResponses, GetBulkSuppressProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Unsuppress Profiles Jobs
 *
 * Get all bulk unsuppress profiles jobs.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `subscriptions:read`
 */
declare const getBulkUnsuppressProfilesJobs: <ThrowOnError extends boolean = false>(options: Options<GetBulkUnsuppressProfilesJobsData, ThrowOnError>) => RequestResult<GetBulkUnsuppressProfilesJobsResponses, GetBulkUnsuppressProfilesJobsErrors, ThrowOnError, "fields">;
/**
 * Bulk Unsuppress Profiles
 *
 * Manually unsuppress profiles by email address or specify a segment/list ID to unsuppress all current members of a segment/list.
 *
 * This only removes suppressions with reason USER_SUPPRESSED ; unsubscribed profiles and suppressed profiles with reason INVALID_EMAIL or HARD_BOUNCE remain unchanged. To learn more, see our guides on [email suppressions](https://help.klaviyo.com/hc/en-us/articles/115005246108#what-is-a-suppressed-profile-1) and [collecting consent](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api).
 *
 * Email address per request limit: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `subscriptions:write`
 */
declare const bulkUnsuppressProfiles: <ThrowOnError extends boolean = false>(options: Options<BulkUnsuppressProfilesData, ThrowOnError>) => RequestResult<BulkUnsuppressProfilesResponses, BulkUnsuppressProfilesErrors, ThrowOnError, "fields">;
/**
 * Get Bulk Unsuppress Profiles Job
 *
 * Get the bulk unsuppress profiles job with the given job ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `subscriptions:read`
 */
declare const getBulkUnsuppressProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetBulkUnsuppressProfilesJobData, ThrowOnError>) => RequestResult<GetBulkUnsuppressProfilesJobResponses, GetBulkUnsuppressProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Push Tokens
 *
 * Return push tokens associated with company.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `push-tokens:read`
 */
declare const getPushTokens: <ThrowOnError extends boolean = false>(options: Options<GetPushTokensData, ThrowOnError>) => RequestResult<GetPushTokensResponses, GetPushTokensErrors, ThrowOnError, "fields">;
/**
 * Create or Update Push Token
 *
 * Create or update a push token.
 *
 * This endpoint can be used to migrate push tokens from another platform to Klaviyo. Please use our mobile SDKs ([iOS](https://github.com/klaviyo/klaviyo-swift-sdk) and [Android](https://github.com/klaviyo/klaviyo-android-sdk)) to create push tokens from users' devices.
 *
 * The maximum allowed payload size is 100KB.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:write`
 * `push-tokens:write`
 */
declare const createPushToken: <ThrowOnError extends boolean = false>(options: Options<CreatePushTokenData, ThrowOnError>) => RequestResult<CreatePushTokenResponses, CreatePushTokenErrors, ThrowOnError, "fields">;
/**
 * Delete Push Token
 *
 * Delete a specific push token based on its ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `push-tokens:write`
 */
declare const deletePushToken: <ThrowOnError extends boolean = false>(options: Options<DeletePushTokenData, ThrowOnError>) => RequestResult<DeletePushTokenResponses, DeletePushTokenErrors, ThrowOnError, "fields">;
/**
 * Get Push Token
 *
 * Return a specific push token based on its ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `push-tokens:read`
 */
declare const getPushToken: <ThrowOnError extends boolean = false>(options: Options<GetPushTokenData, ThrowOnError>) => RequestResult<GetPushTokenResponses, GetPushTokenErrors, ThrowOnError, "fields">;
/**
 * Create or Update Profile
 *
 * Given a set of profile attributes and optionally an ID, create or update a profile.
 *
 * Returns 201 if a new profile was created, 200 if an existing profile was updated.
 *
 * Use the `additional-fields` parameter to include subscriptions and predictive analytics data in your response.
 *
 * Note that setting a field to `null` will clear out the field, whereas not including a field in your request will leave it unchanged.
 *
 * The maximum allowed payload size is 100KB.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:write`
 */
declare const createOrUpdateProfile: <ThrowOnError extends boolean = false>(options: Options<CreateOrUpdateProfileData, ThrowOnError>) => RequestResult<CreateOrUpdateProfileResponses, CreateOrUpdateProfileErrors, ThrowOnError, "fields">;
/**
 * Merge Profiles
 *
 * Merge a given related profile into a profile with the given profile ID.
 *
 * The profile provided under `relationships` (the "source" profile) will be merged into the profile provided by the ID in the base data object (the "destination" profile).
 * This endpoint queues an asynchronous task which will merge data from the source profile into the destination profile, deleting the source profile in the process. This endpoint accepts only one source profile.
 *
 * To learn more about how profile data is preserved or overwritten during a merge, please [visit our Help Center](https://help.klaviyo.com/hc/en-us/articles/115005073847#merge-2-profiles3).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:write`
 */
declare const mergeProfiles: <ThrowOnError extends boolean = false>(options: Options<MergeProfilesData, ThrowOnError>) => RequestResult<MergeProfilesResponses, MergeProfilesErrors, ThrowOnError, "fields">;
/**
 * Bulk Subscribe Profiles
 *
 * Subscribe one or more profiles to email marketing, SMS marketing, or both. If the provided list has double opt-in enabled, profiles will receive a message requiring their confirmation before subscribing. Otherwise, profiles will be immediately subscribed without receiving a confirmation message.
 * Learn more about [consent in this guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api).
 *
 * If a list is not provided, the opt-in process used will be determined by the [account-level default opt-in setting](https://www.klaviyo.com/settings/account/api-keys).
 *
 * To add someone to a list without changing their subscription status, use [Add Profile to List](https://developers.klaviyo.com/en/reference/create_list_relationships).
 *
 * This API will remove any `UNSUBSCRIBE`, `SPAM_REPORT` or `USER_SUPPRESSED` suppressions from the provided profiles. Learn more about [suppressed profiles](https://help.klaviyo.com/hc/en-us/articles/115005246108-Understanding-suppressed-email-profiles#what-is-a-suppressed-profile-1).
 *
 * Maximum number of profiles can be submitted for subscription: 1000
 *
 * This endpoint now supports a `historical_import` flag. If this flag is set `true`, profiles being subscribed will bypass double opt-in emails and be subscribed immediately. They will also bypass any associated "Added to list" flows. This is useful for importing historical data where you have already collected consent. If `historical_import` is set to true, the `consented_at` field is required and must be in the past.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `lists:write`
 * `profiles:write`
 * `subscriptions:write`
 */
declare const bulkSubscribeProfiles: <ThrowOnError extends boolean = false>(options: Options<BulkSubscribeProfilesData, ThrowOnError>) => RequestResult<BulkSubscribeProfilesResponses, BulkSubscribeProfilesErrors, ThrowOnError, "fields">;
/**
 * Bulk Unsubscribe Profiles
 *
 * > 🚧
 * >
 * > Profiles not in the specified list will be globally unsubscribed. Always verify profile list membership before calling this endpoint to avoid unintended global unsubscribes.
 *
 * Unsubscribe one or more profiles to email marketing, SMS marketing, or both. Learn more about [consent in this guide](https://developers.klaviyo.com/en/docs/collect_email_and_sms_consent_via_api).
 *
 * To remove someone from a list without changing their subscription status, use [Remove Profiles from List](https://developers.klaviyo.com/en/reference/remove_profiles_from_list).
 *
 * Maximum number of profiles per call: 100<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `lists:write`
 * `profiles:write`
 * `subscriptions:write`
 */
declare const bulkUnsubscribeProfiles: <ThrowOnError extends boolean = false>(options: Options<BulkUnsubscribeProfilesData, ThrowOnError>) => RequestResult<BulkUnsubscribeProfilesResponses, BulkUnsubscribeProfilesErrors, ThrowOnError, "fields">;
/**
 * Get Push Tokens for Profile
 *
 * Return all push tokens that belong to the given profile.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getPushTokensForProfile: <ThrowOnError extends boolean = false>(options: Options<GetPushTokensForProfileData, ThrowOnError>) => RequestResult<GetPushTokensForProfileResponses, GetPushTokensForProfileErrors, ThrowOnError, "fields">;
/**
 * Get Push Token IDs for Profile
 *
 * Return the IDs of all push tokens associated with the given profile.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getPushTokenIdsForProfile: <ThrowOnError extends boolean = false>(options: Options<GetPushTokenIdsForProfileData, ThrowOnError>) => RequestResult<GetPushTokenIdsForProfileResponses, GetPushTokenIdsForProfileErrors, ThrowOnError, "fields">;
/**
 * Get Lists for Profile
 *
 * Get list memberships for a profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:read`
 * `profiles:read`
 */
declare const getListsForProfile: <ThrowOnError extends boolean = false>(options: Options<GetListsForProfileData, ThrowOnError>) => RequestResult<GetListsForProfileResponses, GetListsForProfileErrors, ThrowOnError, "fields">;
/**
 * Get List IDs for Profile
 *
 * Get list memberships for a profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:read`
 * `profiles:read`
 */
declare const getListIdsForProfile: <ThrowOnError extends boolean = false>(options: Options<GetListIdsForProfileData, ThrowOnError>) => RequestResult<GetListIdsForProfileResponses, GetListIdsForProfileErrors, ThrowOnError, "fields">;
/**
 * Get Segments for Profile
 *
 * Get segment memberships for a profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `segments:read`
 */
declare const getSegmentsForProfile: <ThrowOnError extends boolean = false>(options: Options<GetSegmentsForProfileData, ThrowOnError>) => RequestResult<GetSegmentsForProfileResponses, GetSegmentsForProfileErrors, ThrowOnError, "fields">;
/**
 * Get Segment IDs for Profile
 *
 * Get segment membership relationships for a profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `segments:read`
 */
declare const getSegmentIdsForProfile: <ThrowOnError extends boolean = false>(options: Options<GetSegmentIdsForProfileData, ThrowOnError>) => RequestResult<GetSegmentIdsForProfileResponses, GetSegmentIdsForProfileErrors, ThrowOnError, "fields">;
/**
 * Get List for Bulk Import Profiles Job
 *
 * Get list for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:read`
 */
declare const getListForBulkImportProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetListForBulkImportProfilesJobData, ThrowOnError>) => RequestResult<GetListForBulkImportProfilesJobResponses, GetListForBulkImportProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get List IDs for Bulk Import Profiles Job
 *
 * Get list relationship for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `lists:read`
 */
declare const getListIdsForBulkImportProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetListIdsForBulkImportProfilesJobData, ThrowOnError>) => RequestResult<GetListIdsForBulkImportProfilesJobResponses, GetListIdsForBulkImportProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Profiles for Bulk Import Profiles Job
 *
 * Get profiles for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getProfilesForBulkImportProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetProfilesForBulkImportProfilesJobData, ThrowOnError>) => RequestResult<GetProfilesForBulkImportProfilesJobResponses, GetProfilesForBulkImportProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Profile IDs for Bulk Import Profiles Job
 *
 * Get profile relationships for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getProfileIdsForBulkImportProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetProfileIdsForBulkImportProfilesJobData, ThrowOnError>) => RequestResult<GetProfileIdsForBulkImportProfilesJobResponses, GetProfileIdsForBulkImportProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Errors for Bulk Import Profiles Job
 *
 * Get import errors for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 */
declare const getErrorsForBulkImportProfilesJob: <ThrowOnError extends boolean = false>(options: Options<GetErrorsForBulkImportProfilesJobData, ThrowOnError>) => RequestResult<GetErrorsForBulkImportProfilesJobResponses, GetErrorsForBulkImportProfilesJobErrors, ThrowOnError, "fields">;
/**
 * Get Profile for Push Token
 *
 * Return the profile associated with the given push token.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `push-tokens:read`
 */
declare const getProfileForPushToken: <ThrowOnError extends boolean = false>(options: Options<GetProfileForPushTokenData, ThrowOnError>) => RequestResult<GetProfileForPushTokenResponses, GetProfileForPushTokenErrors, ThrowOnError, "fields">;
/**
 * Get Profile ID for Push Token
 *
 * Return the ID of the profile associated with the given push token.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `push-tokens:read`
 */
declare const getProfileIdForPushToken: <ThrowOnError extends boolean = false>(options: Options<GetProfileIdForPushTokenData, ThrowOnError>) => RequestResult<GetProfileIdForPushTokenResponses, GetProfileIdForPushTokenErrors, ThrowOnError, "fields">;
/**
 * Query Campaign Values
 *
 * Returns the requested campaign analytics values data<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `campaigns:read`
 */
declare const queryCampaignValues: <ThrowOnError extends boolean = false>(options: Options<QueryCampaignValuesData, ThrowOnError>) => RequestResult<QueryCampaignValuesResponses, QueryCampaignValuesErrors, ThrowOnError, "fields">;
/**
 * Query Flow Values
 *
 * Returns the requested flow analytics values data<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const queryFlowValues: <ThrowOnError extends boolean = false>(options: Options<QueryFlowValuesData, ThrowOnError>) => RequestResult<QueryFlowValuesResponses, QueryFlowValuesErrors, ThrowOnError, "fields">;
/**
 * Query Flow Series
 *
 * Returns the requested flow analytics series data<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `flows:read`
 */
declare const queryFlowSeries: <ThrowOnError extends boolean = false>(options: Options<QueryFlowSeriesData, ThrowOnError>) => RequestResult<QueryFlowSeriesResponses, QueryFlowSeriesErrors, ThrowOnError, "fields">;
/**
 * Query Form Values
 *
 * Returns the requested form analytics values data.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const queryFormValues: <ThrowOnError extends boolean = false>(options: Options<QueryFormValuesData, ThrowOnError>) => RequestResult<QueryFormValuesResponses, QueryFormValuesErrors, ThrowOnError, "fields">;
/**
 * Query Form Series
 *
 * Returns the requested form analytics series data.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `forms:read`
 */
declare const queryFormSeries: <ThrowOnError extends boolean = false>(options: Options<QueryFormSeriesData, ThrowOnError>) => RequestResult<QueryFormSeriesResponses, QueryFormSeriesErrors, ThrowOnError, "fields">;
/**
 * Query Segment Values
 *
 * Returns the requested segment analytics values data.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `segments:read`
 */
declare const querySegmentValues: <ThrowOnError extends boolean = false>(options: Options<QuerySegmentValuesData, ThrowOnError>) => RequestResult<QuerySegmentValuesResponses, QuerySegmentValuesErrors, ThrowOnError, "fields">;
/**
 * Query Segment Series
 *
 * Returns the requested segment analytics series data.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d`
 *
 * **Scopes:**
 * `segments:read`
 */
declare const querySegmentSeries: <ThrowOnError extends boolean = false>(options: Options<QuerySegmentSeriesData, ThrowOnError>) => RequestResult<QuerySegmentSeriesResponses, QuerySegmentSeriesErrors, ThrowOnError, "fields">;
/**
 * Get Reviews
 *
 * Get all reviews.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `reviews:read`
 */
declare const getReviews: <ThrowOnError extends boolean = false>(options: Options<GetReviewsData, ThrowOnError>) => RequestResult<GetReviewsResponses, GetReviewsErrors, ThrowOnError, "fields">;
/**
 * Get Review
 *
 * Get the review with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `reviews:read`
 */
declare const getReview: <ThrowOnError extends boolean = false>(options: Options<GetReviewData, ThrowOnError>) => RequestResult<GetReviewResponses, GetReviewErrors, ThrowOnError, "fields">;
/**
 * Update Review
 *
 * Update a review.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `reviews:write`
 */
declare const updateReview: <ThrowOnError extends boolean = false>(options: Options<UpdateReviewData, ThrowOnError>) => RequestResult<UpdateReviewResponses, UpdateReviewErrors, ThrowOnError, "fields">;
/**
 * Get Segments
 *
 * Get all segments in an account.
 *
 * Filter to request a subset of all segments. Segments can be filtered by `name`, `created`, and `updated` fields.
 *
 * Returns a maximum of 10 results per page.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `segments:read`
 */
declare const getSegments: <ThrowOnError extends boolean = false>(options: Options<GetSegmentsData, ThrowOnError>) => RequestResult<GetSegmentsResponses, GetSegmentsErrors, ThrowOnError, "fields">;
/**
 * Create Segment
 *
 * Create a segment.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `100/d`
 *
 * **Scopes:**
 * `segments:write`
 */
declare const createSegment: <ThrowOnError extends boolean = false>(options: Options<CreateSegmentData, ThrowOnError>) => RequestResult<CreateSegmentResponses, CreateSegmentErrors, ThrowOnError, "fields">;
/**
 * Delete Segment
 *
 * Delete a segment with the given segment ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `segments:write`
 */
declare const deleteSegment: <ThrowOnError extends boolean = false>(options: Options<DeleteSegmentData, ThrowOnError>) => RequestResult<DeleteSegmentResponses, DeleteSegmentErrors, ThrowOnError, "fields">;
/**
 * Get Segment
 *
 * Get a segment with the given segment ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`<br><br>Rate limits when using the `additional-fields[segment]=profile_count` parameter in your API request:<br>Burst: `1/s`<br>Steady: `15/m`<br><br>To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-01-15/docs/rate_limits_and_error_handling) guide.
 *
 * **Scopes:**
 * `segments:read`
 */
declare const getSegment: <ThrowOnError extends boolean = false>(options: Options<GetSegmentData, ThrowOnError>) => RequestResult<GetSegmentResponses, GetSegmentErrors, ThrowOnError, "fields">;
/**
 * Update Segment
 *
 * Update a segment with the given segment ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `100/d`
 *
 * **Scopes:**
 * `segments:write`
 */
declare const updateSegment: <ThrowOnError extends boolean = false>(options: Options<UpdateSegmentData, ThrowOnError>) => RequestResult<UpdateSegmentResponses, UpdateSegmentErrors, ThrowOnError, "fields">;
/**
 * Get Tags for Segment
 *
 * Return all tags associated with the given segment ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `segments:read`
 * `tags:read`
 */
declare const getTagsForSegment: <ThrowOnError extends boolean = false>(options: Options<GetTagsForSegmentData, ThrowOnError>) => RequestResult<GetTagsForSegmentResponses, GetTagsForSegmentErrors, ThrowOnError, "fields">;
/**
 * Get Tag IDs for Segment
 *
 * If `related_resource` is `tags`, returns the tag IDs of all tags associated with the given segment ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `segments:read`
 * `tags:read`
 */
declare const getTagIdsForSegment: <ThrowOnError extends boolean = false>(options: Options<GetTagIdsForSegmentData, ThrowOnError>) => RequestResult<GetTagIdsForSegmentResponses, GetTagIdsForSegmentErrors, ThrowOnError, "fields">;
/**
 * Get Profiles for Segment
 *
 * Get all profiles within a segment with the given segment ID.
 *
 * Filter to request a subset of all profiles. Profiles can be filtered by `email`, `phone_number`, `push_token`, and `joined_group_at` fields. Profiles can be sorted by the following fields, in ascending and descending order: `joined_group_at`<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `segments:read`
 */
declare const getProfilesForSegment: <ThrowOnError extends boolean = false>(options: Options<GetProfilesForSegmentData, ThrowOnError>) => RequestResult<GetProfilesForSegmentResponses, GetProfilesForSegmentErrors, ThrowOnError, "fields">;
/**
 * Get Profile IDs for Segment
 *
 * Get all profile membership [relationships](https://developers.klaviyo.com/en/reference/api_overview#relationships) for the given segment ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `profiles:read`
 * `segments:read`
 */
declare const getProfileIdsForSegment: <ThrowOnError extends boolean = false>(options: Options<GetProfileIdsForSegmentData, ThrowOnError>) => RequestResult<GetProfileIdsForSegmentResponses, GetProfileIdsForSegmentErrors, ThrowOnError, "fields">;
/**
 * Get Flows Triggered by Segment
 *
 * Get all flows where the given segment ID is being used as the trigger.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `segments:read`
 */
declare const getFlowsTriggeredBySegment: <ThrowOnError extends boolean = false>(options: Options<GetFlowsTriggeredBySegmentData, ThrowOnError>) => RequestResult<GetFlowsTriggeredBySegmentResponses, GetFlowsTriggeredBySegmentErrors, ThrowOnError, "fields">;
/**
 * Get IDs for Flows Triggered by Segment
 *
 * Get the IDs of all flows where the given segment is being used as the trigger.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `segments:read`
 */
declare const getIdsForFlowsTriggeredBySegment: <ThrowOnError extends boolean = false>(options: Options<GetIdsForFlowsTriggeredBySegmentData, ThrowOnError>) => RequestResult<GetIdsForFlowsTriggeredBySegmentResponses, GetIdsForFlowsTriggeredBySegmentErrors, ThrowOnError, "fields">;
/**
 * Get Tags
 *
 * List all tags in an account.
 *
 * Tags can be filtered by `name`, and sorted by `name` or `id` in ascending or descending order.
 *
 * Returns a maximum of 50 tags per request, which can be paginated with
 * [cursor-based pagination](https://developers.klaviyo.com/en/v2022-10-17/reference/api_overview#pagination).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTags: <ThrowOnError extends boolean = false>(options: Options<GetTagsData, ThrowOnError>) => RequestResult<GetTagsResponses, GetTagsErrors, ThrowOnError, "fields">;
/**
 * Create Tag
 *
 * Create a tag. An account cannot have more than **500** unique tags.
 *
 * A tag belongs to a single tag group. If `relationships.tag-group.data.id` is not specified,
 * the tag is added to the account's default tag group.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 * `tags:write`
 */
declare const createTag: <ThrowOnError extends boolean = false>(options: Options<CreateTagData, ThrowOnError>) => RequestResult<CreateTagResponses, CreateTagErrors, ThrowOnError, "fields">;
/**
 * Delete Tag
 *
 * Delete the tag with the given tag ID. Any associations between the tag and other resources will also be removed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 * `tags:write`
 */
declare const deleteTag: <ThrowOnError extends boolean = false>(options: Options<DeleteTagData, ThrowOnError>) => RequestResult<DeleteTagResponses, DeleteTagErrors, ThrowOnError, "fields">;
/**
 * Get Tag
 *
 * Retrieve the tag with the given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTag: <ThrowOnError extends boolean = false>(options: Options<GetTagData, ThrowOnError>) => RequestResult<GetTagResponses, GetTagErrors, ThrowOnError, "fields">;
/**
 * Update Tag
 *
 * Update the tag with the given tag ID.
 *
 * Only a tag's `name` can be changed. A tag cannot be moved from one tag group to another.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 * `tags:write`
 */
declare const updateTag: <ThrowOnError extends boolean = false>(options: Options<UpdateTagData, ThrowOnError>) => RequestResult<UpdateTagResponses, UpdateTagErrors, ThrowOnError, "fields">;
/**
 * Get Tag Groups
 *
 * List all tag groups in an account. Every account has one default tag group.
 *
 * Tag groups can be filtered by `name`, `exclusive`, and `default`, and sorted by `name` or `id` in ascending or descending order.
 *
 * Returns a maximum of 25 tag groups per request, which can be paginated with
 * [cursor-based pagination](https://developers.klaviyo.com/en/v2022-10-17/reference/api_overview#pagination).<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTagGroups: <ThrowOnError extends boolean = false>(options: Options<GetTagGroupsData, ThrowOnError>) => RequestResult<GetTagGroupsResponses, GetTagGroupsErrors, ThrowOnError, "fields">;
/**
 * Create Tag Group
 *
 * Create a tag group. An account cannot have more than **50** unique tag groups.
 *
 * If `exclusive` is not specified `true` or `false`, the tag group defaults to non-exclusive.
 *
 * If a tag group is non-exclusive, any given related resource (campaign, flow, etc.)
 * can be linked to multiple tags from that tag group.
 * If a tag group is exclusive, any given related resource can only be linked to one tag from that tag group.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 * `tags:write`
 */
declare const createTagGroup: <ThrowOnError extends boolean = false>(options: Options<CreateTagGroupData, ThrowOnError>) => RequestResult<CreateTagGroupResponses, CreateTagGroupErrors, ThrowOnError, "fields">;
/**
 * Delete Tag Group
 *
 * Delete the tag group with the given tag group ID.
 *
 * Any tags inside that tag group, and any associations between those tags and other resources, will also be removed. The default tag group cannot be deleted.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 * `tags:write`
 */
declare const deleteTagGroup: <ThrowOnError extends boolean = false>(options: Options<DeleteTagGroupData, ThrowOnError>) => RequestResult<DeleteTagGroupResponses, DeleteTagGroupErrors, ThrowOnError, "fields">;
/**
 * Get Tag Group
 *
 * Retrieve the tag group with the given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTagGroup: <ThrowOnError extends boolean = false>(options: Options<GetTagGroupData, ThrowOnError>) => RequestResult<GetTagGroupResponses, GetTagGroupErrors, ThrowOnError, "fields">;
/**
 * Update Tag Group
 *
 * Update the tag group with the given tag group ID.
 *
 * Only a tag group's `name` can be changed. A tag group's `exclusive` or `default` value cannot be changed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 * `tags:write`
 */
declare const updateTagGroup: <ThrowOnError extends boolean = false>(options: Options<UpdateTagGroupData, ThrowOnError>) => RequestResult<UpdateTagGroupResponses, UpdateTagGroupErrors, ThrowOnError, "fields">;
/**
 * Remove Tag from Flows
 *
 * Remove a tag's association with one or more flows.
 *
 *
 * Use the request body to pass in the ID(s) of the flows(s) whose association with the tag
 * will be removed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:write`
 * `tags:write`
 */
declare const removeTagFromFlows: <ThrowOnError extends boolean = false>(options: Options<RemoveTagFromFlowsData, ThrowOnError>) => RequestResult<RemoveTagFromFlowsResponses, RemoveTagFromFlowsErrors, ThrowOnError, "fields">;
/**
 * Get Flow IDs for Tag
 *
 * Returns the IDs of all flows associated with the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:read`
 * `tags:read`
 */
declare const getFlowIdsForTag: <ThrowOnError extends boolean = false>(options: Options<GetFlowIdsForTagData, ThrowOnError>) => RequestResult<GetFlowIdsForTagResponses, GetFlowIdsForTagErrors, ThrowOnError, "fields">;
/**
 * Tag Flows
 *
 * Associate a tag with one or more flows. Any flow cannot be associated with more than **100** tags.
 *
 *
 * Use the request body to pass in the ID(s) of the flow(s) that will be associated with the tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `flows:write`
 * `tags:write`
 */
declare const tagFlows: <ThrowOnError extends boolean = false>(options: Options<TagFlowsData, ThrowOnError>) => RequestResult<TagFlowsResponses, TagFlowsErrors, ThrowOnError, "fields">;
/**
 * Remove Tag from Campaigns
 *
 * Remove a tag's association with one or more campaigns.
 *
 *
 * Use the request body to pass in the ID(s) of the campaign(s) whose association with the tag
 * will be removed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `campaigns:write`
 * `tags:write`
 */
declare const removeTagFromCampaigns: <ThrowOnError extends boolean = false>(options: Options<RemoveTagFromCampaignsData, ThrowOnError>) => RequestResult<RemoveTagFromCampaignsResponses, RemoveTagFromCampaignsErrors, ThrowOnError, "fields">;
/**
 * Get Campaign IDs for Tag
 *
 * Returns the IDs of all campaigns associated with the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `campaigns:read`
 * `tags:read`
 */
declare const getCampaignIdsForTag: <ThrowOnError extends boolean = false>(options: Options<GetCampaignIdsForTagData, ThrowOnError>) => RequestResult<GetCampaignIdsForTagResponses, GetCampaignIdsForTagErrors, ThrowOnError, "fields">;
/**
 * Tag Campaigns
 *
 * Associate a tag with one or more campaigns. Any campaign cannot be associated with more than **100** tags.
 *
 *
 * Use the request body to pass in the ID(s) of the campaign(s) that will be associated with the tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `campaigns:write`
 * `tags:write`
 */
declare const tagCampaigns: <ThrowOnError extends boolean = false>(options: Options<TagCampaignsData, ThrowOnError>) => RequestResult<TagCampaignsResponses, TagCampaignsErrors, ThrowOnError, "fields">;
/**
 * Remove Tag from Lists
 *
 * Remove a tag's association with one or more lists.
 *
 *
 * Use the request body to pass in the ID(s) of the list(s) whose association with the tag
 * will be removed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:write`
 * `tags:write`
 */
declare const removeTagFromLists: <ThrowOnError extends boolean = false>(options: Options<RemoveTagFromListsData, ThrowOnError>) => RequestResult<RemoveTagFromListsResponses, RemoveTagFromListsErrors, ThrowOnError, "fields">;
/**
 * Get List IDs for Tag
 *
 * Returns the IDs of all lists associated with the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:read`
 * `tags:read`
 */
declare const getListIdsForTag: <ThrowOnError extends boolean = false>(options: Options<GetListIdsForTagData, ThrowOnError>) => RequestResult<GetListIdsForTagResponses, GetListIdsForTagErrors, ThrowOnError, "fields">;
/**
 * Tag Lists
 *
 * Associate a tag with one or more lists. Any list cannot be associated with more than **100** tags.
 *
 *
 * Use the request body to pass in the ID(s) of the lists(s) that will be associated with the tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `lists:write`
 * `tags:write`
 */
declare const tagLists: <ThrowOnError extends boolean = false>(options: Options<TagListsData, ThrowOnError>) => RequestResult<TagListsResponses, TagListsErrors, ThrowOnError, "fields">;
/**
 * Remove Tag from Segments
 *
 * Remove a tag's association with one or more segments.
 *
 *
 * Use the request body to pass in the ID(s) of the segments(s) whose association with the tag
 * will be removed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `segments:write`
 * `tags:write`
 */
declare const removeTagFromSegments: <ThrowOnError extends boolean = false>(options: Options<RemoveTagFromSegmentsData, ThrowOnError>) => RequestResult<RemoveTagFromSegmentsResponses, RemoveTagFromSegmentsErrors, ThrowOnError, "fields">;
/**
 * Get Segment IDs for Tag
 *
 * Returns the IDs of all segments associated with the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `segments:read`
 * `tags:read`
 */
declare const getSegmentIdsForTag: <ThrowOnError extends boolean = false>(options: Options<GetSegmentIdsForTagData, ThrowOnError>) => RequestResult<GetSegmentIdsForTagResponses, GetSegmentIdsForTagErrors, ThrowOnError, "fields">;
/**
 * Tag Segments
 *
 * Associate a tag with one or more segments. Any segment cannot be associated with more than **100** tags.
 *
 *
 * Use the request body to pass in the ID(s) of the segments(s) that will be associated with the tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `segments:write`
 * `tags:write`
 */
declare const tagSegments: <ThrowOnError extends boolean = false>(options: Options<TagSegmentsData, ThrowOnError>) => RequestResult<TagSegmentsResponses, TagSegmentsErrors, ThrowOnError, "fields">;
/**
 * Get Tag Group for Tag
 *
 * Returns the tag group resource for a given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTagGroupForTag: <ThrowOnError extends boolean = false>(options: Options<GetTagGroupForTagData, ThrowOnError>) => RequestResult<GetTagGroupForTagResponses, GetTagGroupForTagErrors, ThrowOnError, "fields">;
/**
 * Get Tag Group ID for Tag
 *
 * Returns the id of the tag group related to the given tag.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTagGroupIdForTag: <ThrowOnError extends boolean = false>(options: Options<GetTagGroupIdForTagData, ThrowOnError>) => RequestResult<GetTagGroupIdForTagResponses, GetTagGroupIdForTagErrors, ThrowOnError, "fields">;
/**
 * Get Tags for Tag Group
 *
 * Return the tags for a given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTagsForTagGroup: <ThrowOnError extends boolean = false>(options: Options<GetTagsForTagGroupData, ThrowOnError>) => RequestResult<GetTagsForTagGroupResponses, GetTagsForTagGroupErrors, ThrowOnError, "fields">;
/**
 * Get Tag IDs for Tag Group
 *
 * Returns the tag IDs of all tags inside the given tag group.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `tags:read`
 */
declare const getTagIdsForTagGroup: <ThrowOnError extends boolean = false>(options: Options<GetTagIdsForTagGroupData, ThrowOnError>) => RequestResult<GetTagIdsForTagGroupResponses, GetTagIdsForTagGroupErrors, ThrowOnError, "fields">;
/**
 * Get Templates
 *
 * Get all templates in an account.
 *
 * Filter to request a subset of all templates. Templates can be sorted by the following fields, in ascending and descending order: `id`, `name`, `created`, `updated`
 *
 * Returns a maximum of 10 results per page.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const getTemplates: <ThrowOnError extends boolean = false>(options: Options<GetTemplatesData, ThrowOnError>) => RequestResult<GetTemplatesResponses, GetTemplatesErrors, ThrowOnError, "fields">;
/**
 * Create Template
 *
 * Create a new custom HTML template.
 *
 * If there are 1,000 or more templates in an account, creation will fail as there is a limit of 1,000 templates
 * that can be created via the API.
 *
 * Request specific fields using [sparse fieldsets](https://developers.klaviyo.com/en/reference/api_overview#sparse-fieldsets).<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const createTemplate: <ThrowOnError extends boolean = false>(options: Options<CreateTemplateData, ThrowOnError>) => RequestResult<CreateTemplateResponses, CreateTemplateErrors, ThrowOnError, "fields">;
/**
 * Delete Template
 *
 * Delete a template with the given template ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const deleteTemplate: <ThrowOnError extends boolean = false>(options: Options<DeleteTemplateData, ThrowOnError>) => RequestResult<DeleteTemplateResponses, DeleteTemplateErrors, ThrowOnError, "fields">;
/**
 * Get Template
 *
 * Get a template with the given template ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const getTemplate: <ThrowOnError extends boolean = false>(options: Options<GetTemplateData, ThrowOnError>) => RequestResult<GetTemplateResponses, GetTemplateErrors, ThrowOnError, "fields">;
/**
 * Update Template
 *
 * Update a template with the given template ID. Does not currently update drag & drop templates.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const updateTemplate: <ThrowOnError extends boolean = false>(options: Options<UpdateTemplateData, ThrowOnError>) => RequestResult<UpdateTemplateResponses, UpdateTemplateErrors, ThrowOnError, "fields">;
/**
 * Get All Universal Content
 *
 * Get all universal content in an account.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const getAllUniversalContent: <ThrowOnError extends boolean = false>(options: Options<GetAllUniversalContentData, ThrowOnError>) => RequestResult<GetAllUniversalContentResponses, GetAllUniversalContentErrors, ThrowOnError, "fields">;
/**
 * Create Universal Content
 *
 * Create universal content. Currently supported block types are: `button`, `drop_shadow`, `horizontal_rule`, `html`, `image`, `spacer`, and `text`.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const createUniversalContent: <ThrowOnError extends boolean = false>(options: Options<CreateUniversalContentData, ThrowOnError>) => RequestResult<CreateUniversalContentResponses, CreateUniversalContentErrors, ThrowOnError, "fields">;
/**
 * Delete Universal Content
 *
 * Delete the universal content with the given ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const deleteUniversalContent: <ThrowOnError extends boolean = false>(options: Options<DeleteUniversalContentData, ThrowOnError>) => RequestResult<DeleteUniversalContentResponses, DeleteUniversalContentErrors, ThrowOnError, "fields">;
/**
 * Get Universal Content
 *
 * Get the universal content with the given ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const getUniversalContent: <ThrowOnError extends boolean = false>(options: Options<GetUniversalContentData, ThrowOnError>) => RequestResult<GetUniversalContentResponses, GetUniversalContentErrors, ThrowOnError, "fields">;
/**
 * Update Universal Content
 *
 * Update universal content. The `definition` field can only be updated on the following block types at this time: `button`, `drop_shadow`, `horizontal_rule`, `html`, `image`, `spacer`, and `text`.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const updateUniversalContent: <ThrowOnError extends boolean = false>(options: Options<UpdateUniversalContentData, ThrowOnError>) => RequestResult<UpdateUniversalContentResponses, UpdateUniversalContentErrors, ThrowOnError, "fields">;
/**
 * Render Template
 *
 * Render a template with the given template ID and context attribute. Returns the AMP, HTML, and plain text versions of the email template.
 *
 * **Request body parameters** (nested under `attributes`):
 *
 * * `return_fields`: Request specific fields using [sparse fieldsets](https://developers.klaviyo.com/en/reference/api_overview#sparse-fieldsets).
 *
 * * `context`: This is the context your email template will be rendered with. You must pass in a `context` object as a JSON object.
 *
 * Email templates are rendered with contexts in a similar manner to Django templates. Nested template variables can be referenced via dot notation. Template variables without corresponding `context` values are treated as `FALSE` and output nothing.
 *
 * Ex. `{ "name" : "George Washington", "state" : "VA" }`<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 *
 * **Scopes:**
 * `templates:read`
 */
declare const renderTemplate: <ThrowOnError extends boolean = false>(options: Options<RenderTemplateData, ThrowOnError>) => RequestResult<RenderTemplateResponses, RenderTemplateErrors, ThrowOnError, "fields">;
/**
 * Clone Template
 *
 * Create a clone of a template with the given template ID.
 *
 * If there are 1,000 or more templates in an account, cloning will fail as there is a limit of 1,000 templates
 * that can be created via the API.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `templates:write`
 */
declare const cloneTemplate: <ThrowOnError extends boolean = false>(options: Options<CloneTemplateData, ThrowOnError>) => RequestResult<CloneTemplateResponses, CloneTemplateErrors, ThrowOnError, "fields">;
/**
 * Get Tracking Settings
 *
 * Get all UTM tracking settings in an account. Returns an array with a single tracking setting.
 *
 * More information about UTM tracking settings can be found [here](https://help.klaviyo.com/hc/en-us/articles/115005247808).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `tracking-settings:read`
 */
declare const getTrackingSettings: <ThrowOnError extends boolean = false>(options: Options<GetTrackingSettingsData, ThrowOnError>) => RequestResult<GetTrackingSettingsResponses, GetTrackingSettingsErrors, ThrowOnError, "fields">;
/**
 * Get Tracking Setting
 *
 * Get the UTM tracking setting with the given account ID.
 *
 * More information about UTM tracking settings can be found [here](https://help.klaviyo.com/hc/en-us/articles/115005247808).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `tracking-settings:read`
 */
declare const getTrackingSetting: <ThrowOnError extends boolean = false>(options: Options<GetTrackingSettingData, ThrowOnError>) => RequestResult<GetTrackingSettingResponses, GetTrackingSettingErrors, ThrowOnError, "fields">;
/**
 * Update Tracking Setting
 *
 * Update the UTM tracking setting with the given account ID.
 *
 * More information about UTM tracking settings can be found [here](https://help.klaviyo.com/hc/en-us/articles/115005247808).<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `tracking-settings:write`
 */
declare const updateTrackingSetting: <ThrowOnError extends boolean = false>(options: Options<UpdateTrackingSettingData, ThrowOnError>) => RequestResult<UpdateTrackingSettingResponses, UpdateTrackingSettingErrors, ThrowOnError, "fields">;
/**
 * Get Web Feeds
 *
 * Get all web feeds for an account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `web-feeds:read`
 */
declare const getWebFeeds: <ThrowOnError extends boolean = false>(options: Options<GetWebFeedsData, ThrowOnError>) => RequestResult<GetWebFeedsResponses, GetWebFeedsErrors, ThrowOnError, "fields">;
/**
 * Create Web Feed
 *
 * Create a web feed.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `web-feeds:write`
 */
declare const createWebFeed: <ThrowOnError extends boolean = false>(options: Options<CreateWebFeedData, ThrowOnError>) => RequestResult<CreateWebFeedResponses, CreateWebFeedErrors, ThrowOnError, "fields">;
/**
 * Delete Web Feed
 *
 * Delete the web feed with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `web-feeds:write`
 */
declare const deleteWebFeed: <ThrowOnError extends boolean = false>(options: Options<DeleteWebFeedData, ThrowOnError>) => RequestResult<DeleteWebFeedResponses, DeleteWebFeedErrors, ThrowOnError, "fields">;
/**
 * Get Web Feed
 *
 * Get the web feed with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `web-feeds:read`
 */
declare const getWebFeed: <ThrowOnError extends boolean = false>(options: Options<GetWebFeedData, ThrowOnError>) => RequestResult<GetWebFeedResponses, GetWebFeedErrors, ThrowOnError, "fields">;
/**
 * Update Web Feed
 *
 * Update the web feed with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `web-feeds:write`
 */
declare const updateWebFeed: <ThrowOnError extends boolean = false>(options: Options<UpdateWebFeedData, ThrowOnError>) => RequestResult<UpdateWebFeedResponses, UpdateWebFeedErrors, ThrowOnError, "fields">;
/**
 * Get Webhooks
 *
 * Get all webhooks in an account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:read`
 */
declare const getWebhooks: <ThrowOnError extends boolean = false>(options: Options<GetWebhooksData, ThrowOnError>) => RequestResult<GetWebhooksResponses, GetWebhooksErrors, ThrowOnError, "fields">;
/**
 * Create Webhook
 *
 * Create a new Webhook<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:write`
 */
declare const createWebhook: <ThrowOnError extends boolean = false>(options: Options<CreateWebhookData, ThrowOnError>) => RequestResult<CreateWebhookResponses, CreateWebhookErrors, ThrowOnError, "fields">;
/**
 * Delete Webhook
 *
 * Delete a webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:write`
 */
declare const deleteWebhook: <ThrowOnError extends boolean = false>(options: Options<DeleteWebhookData, ThrowOnError>) => RequestResult<DeleteWebhookResponses, DeleteWebhookErrors, ThrowOnError, "fields">;
/**
 * Get Webhook
 *
 * Get the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:read`
 */
declare const getWebhook: <ThrowOnError extends boolean = false>(options: Options<GetWebhookData, ThrowOnError>) => RequestResult<GetWebhookResponses, GetWebhookErrors, ThrowOnError, "fields">;
/**
 * Update Webhook
 *
 * Update the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:write`
 */
declare const updateWebhook: <ThrowOnError extends boolean = false>(options: Options<UpdateWebhookData, ThrowOnError>) => RequestResult<UpdateWebhookResponses, UpdateWebhookErrors, ThrowOnError, "fields">;
/**
 * Get Webhook Topics
 *
 * Get all webhook topics in a Klaviyo account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:read`
 */
declare const getWebhookTopics: <ThrowOnError extends boolean = false>(options: Options<GetWebhookTopicsData, ThrowOnError>) => RequestResult<GetWebhookTopicsResponses, GetWebhookTopicsErrors, ThrowOnError, "fields">;
/**
 * Get Webhook Topic
 *
 * Get the webhook topic with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`
 *
 * **Scopes:**
 * `webhooks:read`
 */
declare const getWebhookTopic: <ThrowOnError extends boolean = false>(options: Options<GetWebhookTopicData, ThrowOnError>) => RequestResult<GetWebhookTopicResponses, GetWebhookTopicErrors, ThrowOnError, "fields">;
/**
 * Get Client Review Values Reports
 *
 * Get all reviews values reports in an account.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 */
declare const getClientReviewValuesReports: <ThrowOnError extends boolean = false>(options: Options<GetClientReviewValuesReportsData, ThrowOnError>) => RequestResult<GetClientReviewValuesReportsResponses, GetClientReviewValuesReportsErrors, ThrowOnError, "fields">;
/**
 * Get Client Reviews
 *
 * Get all reviews. This endpoint is for client-side environments only, for server-side use, refer to https://developers.klaviyo.com/en/reference/get_reviews<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 */
declare const getClientReviews: <ThrowOnError extends boolean = false>(options: Options<GetClientReviewsData, ThrowOnError>) => RequestResult<GetClientReviewsResponses, GetClientReviewsErrors, ThrowOnError, "fields">;
/**
 * Create Client Review
 *
 * Create a review with the given ID. This endpoint is for client-side environments only.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 */
declare const createClientReview: <ThrowOnError extends boolean = false>(options: Options<CreateClientReviewData, ThrowOnError>) => RequestResult<CreateClientReviewResponses, CreateClientReviewErrors, ThrowOnError, "fields">;
/**
 * Create Client Subscription
 *
 * Creates a subscription and consent record for email and/or SMS channels based on the provided `email` and `phone_number` attributes, respectively. One of either `email` or `phone_number` must be provided.
 *
 * This endpoint is specifically designed to be called from publicly-browseable, client-side environments only and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 *
 * Do not use this endpoint from server-side applications.
 * To subscribe profiles from server-side applications, instead use [POST /api/profile-subscription-bulk-create-jobs](https://developers.klaviyo.com/en/reference/subscribe_profiles).
 *
 * Profiles can be opted into multiple channels: email marketing, SMS marketing, and SMS transactional. You can specify the channel(s) to subscribe the profile to by providing a subscriptions object in the profile attributes.
 *
 * If you include a subscriptions object, only channels in that object will be subscribed.  You can use this to update `email` or `phone` on the profile without subscribing them, for example, by setting the profile property but omitting that channel in the subscriptions object. If a subscriptions object is not provided, subscriptions are defaulted to `MARKETING`.<br><br>*Rate limits*:<br>Burst: `100/s`<br>Steady: `700/m`
 *
 * **Scopes:**
 * `subscriptions:write`
 */
declare const createClientSubscription: <ThrowOnError extends boolean = false>(options: Options<CreateClientSubscriptionData, ThrowOnError>) => RequestResult<CreateClientSubscriptionResponses, CreateClientSubscriptionErrors, ThrowOnError, "fields">;
/**
 * Create or Update Client Push Token
 *
 * Create or update a push token.
 *
 * This endpoint is specifically designed to be called from our mobile SDKs ([iOS](https://github.com/klaviyo/klaviyo-swift-sdk) and [Android](https://github.com/klaviyo/klaviyo-android-sdk)) and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 * You must have push notifications enabled to use this endpoint.
 *
 * To migrate push tokens from another platform to Klaviyo, please use our server-side [POST /api/push-tokens](https://developers.klaviyo.com/en/reference/create_push_token) endpoint instead.<br><br>*Rate limits*:<br>Burst: `150/s`<br>Steady: `1400/m`
 */
declare const createClientPushToken: <ThrowOnError extends boolean = false>(options: Options<CreateClientPushTokenData, ThrowOnError>) => RequestResult<CreateClientPushTokenResponses, CreateClientPushTokenErrors, ThrowOnError, "fields">;
/**
 * Unregister Client Push Token
 *
 * Unregister a push token.
 *
 * This endpoint is specifically designed to be called from our mobile SDKs ([iOS](https://github.com/klaviyo/klaviyo-swift-sdk) and [Android](https://github.com/klaviyo/klaviyo-android-sdk)) and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 * You must have push notifications enabled to use this endpoint.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m`
 */
declare const unregisterClientPushToken: <ThrowOnError extends boolean = false>(options: Options<UnregisterClientPushTokenData, ThrowOnError>) => RequestResult<UnregisterClientPushTokenResponses, UnregisterClientPushTokenErrors, ThrowOnError, "fields">;
/**
 * Create Client Event
 *
 * Create a new event to track a profile's activity.
 *
 * This endpoint is specifically designed to be called from publicly-browseable, client-side environments only and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 *
 * Do not use this endpoint from server-side applications.
 * To create events from server-side applications, instead use [POST /api/events](https://developers.klaviyo.com/en/reference/create_event).
 *
 * Note that to update a profile's existing identifiers (e.g., email), you must use a server-side endpoint authenticated by a private API key. Attempts to do so via client-side endpoints will return a 202, however the identifier field(s) will not be updated.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `events:write`
 */
declare const createClientEvent: <ThrowOnError extends boolean = false>(options: Options<CreateClientEventData, ThrowOnError>) => RequestResult<CreateClientEventResponses, CreateClientEventErrors, ThrowOnError, "fields">;
/**
 * Create or Update Client Profile
 *
 * Create or update properties about a profile without tracking an associated event.
 *
 * This endpoint is specifically designed to be called from publicly-browseable, client-side environments only and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 *
 * Do not use this endpoint from server-side applications.
 * To create or update profiles from server-side applications, instead use [POST /api/profile-import](https://developers.klaviyo.com/en/reference/create_or_update_profile).
 *
 * Note that to update a profile's existing identifiers (e.g., email), you must use a server-side endpoint authenticated by a private API key. Attempts to do so via client-side endpoints will return a 202, however the identifier field(s) will not be updated.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `profiles:write`
 */
declare const createClientProfile: <ThrowOnError extends boolean = false>(options: Options<CreateClientProfileData, ThrowOnError>) => RequestResult<CreateClientProfileResponses, CreateClientProfileErrors, ThrowOnError, "fields">;
/**
 * Bulk Create Client Events
 *
 * Create new events to track a profile's activity.
 *
 * This endpoint is specifically designed to be called from publicly-browseable, client-side environments only and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 *
 * Do not use this endpoint from server-side applications.
 * To create events from server-side applications, instead use [POST /api/event-bulk-create-jobs](https://developers.klaviyo.com/en/reference/bulk_create_events).
 *
 * Accepts a maximum of `1000` events per request.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`
 *
 * **Scopes:**
 * `events:write`
 */
declare const bulkCreateClientEvents: <ThrowOnError extends boolean = false>(options: Options<BulkCreateClientEventsData, ThrowOnError>) => RequestResult<BulkCreateClientEventsResponses, BulkCreateClientEventsErrors, ThrowOnError, "fields">;
/**
 * Create Client Back In Stock Subscription
 *
 * Subscribe a profile to receive back in stock notifications. Check out [our Back in Stock API guide](https://developers.klaviyo.com/en/docs/how_to_set_up_custom_back_in_stock) for more details.
 *
 * This endpoint is specifically designed to be called from publicly-browseable, client-side environments only and requires a [public API key (site ID)](https://www.klaviyo.com/settings/account/api-keys). Never use a private API key with our client-side endpoints.
 *
 * Do not use this endpoint from server-side applications.
 * To create back in stock subscriptions from server-side applications, instead use [POST /api/back-in-stock-subscriptions](https://developers.klaviyo.com/en/reference/create_back_in_stock_subscription).<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m`
 *
 * **Scopes:**
 * `catalogs:write`
 * `profiles:write`
 */
declare const createClientBackInStockSubscription: <ThrowOnError extends boolean = false>(options: Options<CreateClientBackInStockSubscriptionData, ThrowOnError>) => RequestResult<CreateClientBackInStockSubscriptionResponses, CreateClientBackInStockSubscriptionErrors, ThrowOnError, "fields">;

export { type AbTestAction, type AbTestCampaignEnum, type AbTestEnum, type AbTestSendStrategy, type AccountDefaultEnum, type AccountEnum, type AccountResponseObjectResource, type ActionOutputCondition, type ActionOutputConditionConditionGroup, type ActionOutputConditionFilter, type ActionOutputEnum, type ActionOutputSplitAction, type ActionOutputSplitActionData, type ActionOutputSplitEnum, type AddCategoriesToCatalogItemData, type AddCategoriesToCatalogItemError, type AddCategoriesToCatalogItemErrors, type AddCategoriesToCatalogItemResponse, type AddCategoriesToCatalogItemResponses, type AddItemsToCatalogCategoryData, type AddItemsToCatalogCategoryError, type AddItemsToCatalogCategoryErrors, type AddItemsToCatalogCategoryResponse, type AddItemsToCatalogCategoryResponses, type AddProfilesToListData, type AddProfilesToListError, type AddProfilesToListErrors, type AddProfilesToListResponse, type AddProfilesToListResponses, type AdditionalField, type AfterCloseOrSubmitTimeoutEnum, type AfterCloseTimeout, type AfterCloseTimeoutProperties, type AgeGate, type AgeGateEnum, type AgeGateProperties, type AgeGateStyles, type AlltimeDateFilter, type AnniversaryDateFilter, type AnyEnum, type ApiEnum, type ApiJobErrorPayload, type ApiMethodFilter, type AssignTemplateToCampaignMessageData, type AssignTemplateToCampaignMessageError, type AssignTemplateToCampaignMessageErrors, type AssignTemplateToCampaignMessageResponse, type AssignTemplateToCampaignMessageResponses, type AttributionEnum, type AttributionResponseObjectResource, type Audiences, type AudiencesUpdate, type AutomaticWinnerSelectionSettings, type BackInStock, type BackInStockDelayAction, type BackInStockDelayEnum, type BackInStockDynamicButtonBorderStyles, type BackInStockDynamicButtonData, type BackInStockDynamicButtonDropShadowStyles, type BackInStockDynamicButtonStyles, type BackInStockDynamicButtonTextStyles, type BackInStockEmailConsentCheckbox, type BackInStockEmailConsentCheckboxProperties, type BackInStockEmailConsentCheckboxStyles, type BackInStockEnum, type BackInStockMethodFilter, type BackInStockProperties, type BackInStockSubscriptionEnum, type BackgroundImage, type BackgroundImageStyles, type BannerStyles, type BaseEventCreateQueryBulkEntryResourceObject, type BisPromotionalEmailCheckboxEnum, type BlockDisplayOptions, type BlockEnum, type BooleanBranchLinks, type BooleanEnum, type BooleanFilter, type BorderStyle, type BounceDateEnum, type BounceDateFilter, type BulkCreateCatalogCategoriesData, type BulkCreateCatalogCategoriesError, type BulkCreateCatalogCategoriesErrors, type BulkCreateCatalogCategoriesResponse, type BulkCreateCatalogCategoriesResponses, type BulkCreateCatalogItemsData, type BulkCreateCatalogItemsError, type BulkCreateCatalogItemsErrors, type BulkCreateCatalogItemsResponse, type BulkCreateCatalogItemsResponses, type BulkCreateCatalogVariantsData, type BulkCreateCatalogVariantsError, type BulkCreateCatalogVariantsErrors, type BulkCreateCatalogVariantsResponse, type BulkCreateCatalogVariantsResponses, type BulkCreateClientEventsData, type BulkCreateClientEventsError, type BulkCreateClientEventsErrors, type BulkCreateClientEventsResponses, type BulkCreateCouponCodesData, type BulkCreateCouponCodesError, type BulkCreateCouponCodesErrors, type BulkCreateCouponCodesResponse, type BulkCreateCouponCodesResponses, type BulkCreateDataSourceRecordsData, type BulkCreateDataSourceRecordsError, type BulkCreateDataSourceRecordsErrors, type BulkCreateDataSourceRecordsResponse, type BulkCreateDataSourceRecordsResponses, type BulkCreateEventsData, type BulkCreateEventsError, type BulkCreateEventsErrors, type BulkCreateEventsResponses, type BulkDeleteCatalogCategoriesData, type BulkDeleteCatalogCategoriesError, type BulkDeleteCatalogCategoriesErrors, type BulkDeleteCatalogCategoriesResponse, type BulkDeleteCatalogCategoriesResponses, type BulkDeleteCatalogItemsData, type BulkDeleteCatalogItemsError, type BulkDeleteCatalogItemsErrors, type BulkDeleteCatalogItemsResponse, type BulkDeleteCatalogItemsResponses, type BulkDeleteCatalogVariantsData, type BulkDeleteCatalogVariantsError, type BulkDeleteCatalogVariantsErrors, type BulkDeleteCatalogVariantsResponse, type BulkDeleteCatalogVariantsResponses, type BulkImportProfilesData, type BulkImportProfilesError, type BulkImportProfilesErrors, type BulkImportProfilesResponse, type BulkImportProfilesResponses, type BulkProfileSuppressionsCreateJobResponseObjectResource, type BulkProfileSuppressionsRemoveJobResponseObjectResource, type BulkRemoveEnum, type BulkRemoveMethodFilter, type BulkSubscribeProfilesData, type BulkSubscribeProfilesError, type BulkSubscribeProfilesErrors, type BulkSubscribeProfilesResponses, type BulkSuppressProfilesData, type BulkSuppressProfilesError, type BulkSuppressProfilesErrors, type BulkSuppressProfilesResponse, type BulkSuppressProfilesResponses, type BulkUnsubscribeProfilesData, type BulkUnsubscribeProfilesError, type BulkUnsubscribeProfilesErrors, type BulkUnsubscribeProfilesResponses, type BulkUnsuppressProfilesData, type BulkUnsuppressProfilesError, type BulkUnsuppressProfilesErrors, type BulkUnsuppressProfilesResponse, type BulkUnsuppressProfilesResponses, type BulkUpdateCatalogCategoriesData, type BulkUpdateCatalogCategoriesError, type BulkUpdateCatalogCategoriesErrors, type BulkUpdateCatalogCategoriesResponse, type BulkUpdateCatalogCategoriesResponses, type BulkUpdateCatalogItemsData, type BulkUpdateCatalogItemsError, type BulkUpdateCatalogItemsErrors, type BulkUpdateCatalogItemsResponse, type BulkUpdateCatalogItemsResponses, type BulkUpdateCatalogVariantsData, type BulkUpdateCatalogVariantsError, type BulkUpdateCatalogVariantsErrors, type BulkUpdateCatalogVariantsResponse, type BulkUpdateCatalogVariantsResponses, type Button, type ButtonBlock, type ButtonDropShadowStyles, type ButtonEnum, type ButtonProperties, type ButtonStyles, type CalendarDateFilter, type CampaignCloneQuery, type CampaignCloneQueryResourceObject, type CampaignCreateQuery, type CampaignCreateQueryResourceObject, type CampaignEnum, type CampaignMessageAssignTemplateQuery, type CampaignMessageAssignTemplateQueryResourceObject, type CampaignMessageCreateQueryResourceObject, type CampaignMessageEnum, type CampaignMessageImageUpdateQuery, type CampaignMessageIncrement, type CampaignMessagePartialUpdateQuery, type CampaignMessagePartialUpdateQueryResourceObject, type CampaignMessageProperty, type CampaignMessageResponseObjectResource, type CampaignMessageStaticCount, type CampaignPartialUpdateQuery, type CampaignPartialUpdateQueryResourceObject, type CampaignRecipientEstimationEnum, type CampaignRecipientEstimationJobCreateQuery, type CampaignRecipientEstimationJobCreateQueryResourceObject, type CampaignRecipientEstimationJobEnum, type CampaignRecipientEstimationJobResponseObjectResource, type CampaignRecipientEstimationResponseObjectResource, type CampaignResponseObjectResource, type CampaignSendJobCreateQuery, type CampaignSendJobCreateQueryResourceObject, type CampaignSendJobEnum, type CampaignSendJobPartialUpdateQuery, type CampaignSendJobPartialUpdateQueryResourceObject, type CampaignSendJobResponseObjectResource, type CampaignTrackingSettingDynamicParam, type CampaignTrackingSettingStaticParam, type CampaignValuesReportEnum, type CampaignValuesRequestDto, type CampaignValuesRequestDtoResourceObject, type CampaignsEmailTrackingOptions, type CampaignsSmsTrackingOptions, type CancelCampaignSendData, type CancelCampaignSendError, type CancelCampaignSendErrors, type CancelCampaignSendResponse, type CancelCampaignSendResponses, type CarrierDeactivationEnum, type CarrierDeactivationMethodFilter, type CartItemCount, type CartItemCountEnum, type CartItemCountProperties, type CartProduct, type CartProductEnum, type CartProductProperties, type CartValue, type CartValueEnum, type CartValueProperties, type CatalogCategoryBulkCreateJobEnum, type CatalogCategoryBulkDeleteJobEnum, type CatalogCategoryBulkUpdateJobEnum, type CatalogCategoryCreateJobCreateQuery, type CatalogCategoryCreateJobCreateQueryResourceObject, type CatalogCategoryCreateJobResponseObjectResource, type CatalogCategoryCreateQuery, type CatalogCategoryCreateQueryResourceObject, type CatalogCategoryDeleteJobCreateQuery, type CatalogCategoryDeleteJobCreateQueryResourceObject, type CatalogCategoryDeleteJobResponseObjectResource, type CatalogCategoryDeleteQueryResourceObject, type CatalogCategoryEnum, type CatalogCategoryItemOp, type CatalogCategoryResponseObjectResource, type CatalogCategoryUpdateJobCreateQuery, type CatalogCategoryUpdateJobCreateQueryResourceObject, type CatalogCategoryUpdateJobResponseObjectResource, type CatalogCategoryUpdateQuery, type CatalogCategoryUpdateQueryResourceObject, type CatalogItemBulkCreateJobEnum, type CatalogItemBulkDeleteJobEnum, type CatalogItemBulkUpdateJobEnum, type CatalogItemCategoryOp, type CatalogItemCreateJobCreateQuery, type CatalogItemCreateJobCreateQueryResourceObject, type CatalogItemCreateJobResponseObjectResource, type CatalogItemCreateQuery, type CatalogItemCreateQueryResourceObject, type CatalogItemDeleteJobCreateQuery, type CatalogItemDeleteJobCreateQueryResourceObject, type CatalogItemDeleteJobResponseObjectResource, type CatalogItemDeleteQueryResourceObject, type CatalogItemEnum, type CatalogItemResponseObjectResource, type CatalogItemUpdateJobCreateQuery, type CatalogItemUpdateJobCreateQueryResourceObject, type CatalogItemUpdateJobResponseObjectResource, type CatalogItemUpdateQuery, type CatalogItemUpdateQueryResourceObject, type CatalogVariantBulkCreateJobEnum, type CatalogVariantBulkDeleteJobEnum, type CatalogVariantBulkUpdateJobEnum, type CatalogVariantCreateJobCreateQuery, type CatalogVariantCreateJobCreateQueryResourceObject, type CatalogVariantCreateJobResponseObjectResource, type CatalogVariantCreateQuery, type CatalogVariantCreateQueryResourceObject, type CatalogVariantDeleteJobCreateQuery, type CatalogVariantDeleteJobCreateQueryResourceObject, type CatalogVariantDeleteJobResponseObjectResource, type CatalogVariantDeleteQueryResourceObject, type CatalogVariantEnum, type CatalogVariantResponseObjectResource, type CatalogVariantUpdateJobCreateQuery, type CatalogVariantUpdateJobCreateQueryResourceObject, type CatalogVariantUpdateJobResponseObjectResource, type CatalogVariantUpdateQuery, type CatalogVariantUpdateQueryResourceObject, type Channel, type ChannelEnum, type ChannelProperties, type ChannelSettings, type Checkboxes, type CheckboxesEnum, type CheckboxesProperties, type CheckboxesStyles, type CheckoutEnum, type CheckoutMethodFilter, type ClientBisSubscriptionCreateQuery, type ClientBisSubscriptionCreateQueryResourceObject, type ClientOptions, type ClientReviewResponseDtoObjectResource, type CloneTemplateData, type CloneTemplateError, type CloneTemplateErrors, type CloneTemplateResponse, type CloneTemplateResponses, type Close, type CloseButtonStyle, type CloseEnum, type CloseProperties, type CodeAction, type CodeEnum, type CollectionLinks, type Column, type ColumnStyles, type ConditionGroup, type ConditionalBranchAction, type ConditionalBranchActionData, type ConditionalSplitEnum, type ConstantContactEnum, type ConstantContactIntegrationFilter, type ConstantContactIntegrationMethodFilter, type ContactInformation, type ContentExperimentAction, type ContentExperimentEnum, type ContentRepeat, type CountdownDelayAction, type CountdownDelayActionData, type CountdownDelayEnum, type CountdownTimer, type CountdownTimerEnum, type CountdownTimerProperties, type CountdownTimerStyles, type Coupon, type CouponBlock, type CouponCodeBulkCreateJobEnum, type CouponCodeCreateJobCreateQuery, type CouponCodeCreateJobCreateQueryResourceObject, type CouponCodeCreateJobResponseObjectResource, type CouponCodeCreateQuery, type CouponCodeCreateQueryResourceObject, type CouponCodeEnum, type CouponCodeResponseObjectResource, type CouponCodeUpdateQuery, type CouponCodeUpdateQueryResourceObject, type CouponCreateQuery, type CouponCreateQueryResourceObject, type CouponEnum, type CouponProperties, type CouponResponseObjectResource, type CouponStyles, type CouponUpdateQuery, type CouponUpdateQueryResourceObject, type CreateBackInStockSubscriptionData, type CreateBackInStockSubscriptionError, type CreateBackInStockSubscriptionErrors, type CreateBackInStockSubscriptionResponses, type CreateCampaignCloneData, type CreateCampaignCloneError, type CreateCampaignCloneErrors, type CreateCampaignCloneResponse, type CreateCampaignCloneResponses, type CreateCampaignData, type CreateCampaignError, type CreateCampaignErrors, type CreateCampaignResponse, type CreateCampaignResponses, type CreateCatalogCategoryData, type CreateCatalogCategoryError, type CreateCatalogCategoryErrors, type CreateCatalogCategoryResponse, type CreateCatalogCategoryResponses, type CreateCatalogItemData, type CreateCatalogItemError, type CreateCatalogItemErrors, type CreateCatalogItemResponse, type CreateCatalogItemResponses, type CreateCatalogVariantData, type CreateCatalogVariantError, type CreateCatalogVariantErrors, type CreateCatalogVariantResponse, type CreateCatalogVariantResponses, type CreateClientBackInStockSubscriptionData, type CreateClientBackInStockSubscriptionError, type CreateClientBackInStockSubscriptionErrors, type CreateClientBackInStockSubscriptionResponses, type CreateClientEventData, type CreateClientEventError, type CreateClientEventErrors, type CreateClientEventResponses, type CreateClientProfileData, type CreateClientProfileError, type CreateClientProfileErrors, type CreateClientProfileResponses, type CreateClientPushTokenData, type CreateClientPushTokenError, type CreateClientPushTokenErrors, type CreateClientPushTokenResponses, type CreateClientReviewData, type CreateClientReviewError, type CreateClientReviewErrors, type CreateClientReviewResponses, type CreateClientSubscriptionData, type CreateClientSubscriptionError, type CreateClientSubscriptionErrors, type CreateClientSubscriptionResponses, type CreateCouponCodeData, type CreateCouponCodeError, type CreateCouponCodeErrors, type CreateCouponCodeResponse, type CreateCouponCodeResponses, type CreateCouponData, type CreateCouponError, type CreateCouponErrors, type CreateCouponResponse, type CreateCouponResponses, type CreateCustomMetricData, type CreateCustomMetricError, type CreateCustomMetricErrors, type CreateCustomMetricResponse, type CreateCustomMetricResponses, type CreateDataSourceData, type CreateDataSourceError, type CreateDataSourceErrors, type CreateDataSourceRecordData, type CreateDataSourceRecordError, type CreateDataSourceRecordErrors, type CreateDataSourceRecordResponse, type CreateDataSourceRecordResponses, type CreateDataSourceResponse, type CreateDataSourceResponses, type CreateEventData, type CreateEventError, type CreateEventErrors, type CreateEventResponses, type CreateFlowData, type CreateFlowError, type CreateFlowErrors, type CreateFlowResponse, type CreateFlowResponses, type CreateFormData, type CreateFormError, type CreateFormErrors, type CreateFormResponse, type CreateFormResponses, type CreateListData, type CreateListError, type CreateListErrors, type CreateListResponse, type CreateListResponses, type CreateOrUpdateProfileData, type CreateOrUpdateProfileError, type CreateOrUpdateProfileErrors, type CreateOrUpdateProfileResponse, type CreateOrUpdateProfileResponses, type CreateProfileData, type CreateProfileError, type CreateProfileErrors, type CreateProfileResponse, type CreateProfileResponses, type CreatePushTokenData, type CreatePushTokenError, type CreatePushTokenErrors, type CreatePushTokenResponses, type CreateSegmentData, type CreateSegmentError, type CreateSegmentErrors, type CreateSegmentResponse, type CreateSegmentResponses, type CreateTagData, type CreateTagError, type CreateTagErrors, type CreateTagGroupData, type CreateTagGroupError, type CreateTagGroupErrors, type CreateTagGroupResponse, type CreateTagGroupResponses, type CreateTagResponse, type CreateTagResponses, type CreateTemplateData, type CreateTemplateError, type CreateTemplateErrors, type CreateTemplateResponse, type CreateTemplateResponses, type CreateUniversalContentData, type CreateUniversalContentError, type CreateUniversalContentErrors, type CreateUniversalContentResponse, type CreateUniversalContentResponses, type CreateWebFeedData, type CreateWebFeedError, type CreateWebFeedErrors, type CreateWebFeedResponse, type CreateWebFeedResponses, type CreateWebhookData, type CreateWebhookError, type CreateWebhookErrors, type CreateWebhookResponse, type CreateWebhookResponses, type CustomEnum, type CustomJavascript, type CustomJavascriptEnum, type CustomMetricCondition, type CustomMetricCreateQuery, type CustomMetricCreateQueryResourceObject, type CustomMetricDefinition, type CustomMetricEnum, type CustomMetricGroup, type CustomMetricPartialUpdateQuery, type CustomMetricPartialUpdateQueryResourceObject, type CustomMetricResponseObjectResource, type CustomQuestionDto, type CustomSourceEnum, type CustomSourceFilter, type CustomTimeframe, type CustomTrackingParamDto, type DataPrivacyCreateDeletionJobQuery, type DataPrivacyCreateDeletionJobQueryResourceObject, type DataPrivacyDeletionJobEnum, type DataPrivacyProfileQueryResourceObject, type DataSourceCreateQuery, type DataSourceCreateQueryResourceObject, type DataSourceEnum, type DataSourceRecordBulkCreateJobCreateQuery, type DataSourceRecordBulkCreateJobCreateQueryResourceObject, type DataSourceRecordBulkCreateJobEnum, type DataSourceRecordCreateJobCreateQuery, type DataSourceRecordCreateJobCreateQueryResourceObject, type DataSourceRecordCreateJobEnum, type DataSourceRecordEnum, type DataSourceRecordResourceObject, type DataSourceResponseObjectResource, type DataWarehouseImportEnum, type DataWarehouseImportMethodFilter, type Date, type DateEnum, type DateProperties, type DateStyles, type DeepLinkEnum, type Delay, type DelayEnum, type DelayProperties, type DeleteCampaignData, type DeleteCampaignError, type DeleteCampaignErrors, type DeleteCampaignResponse, type DeleteCampaignResponses, type DeleteCatalogCategoryData, type DeleteCatalogCategoryError, type DeleteCatalogCategoryErrors, type DeleteCatalogCategoryResponse, type DeleteCatalogCategoryResponses, type DeleteCatalogItemData, type DeleteCatalogItemError, type DeleteCatalogItemErrors, type DeleteCatalogItemResponse, type DeleteCatalogItemResponses, type DeleteCatalogVariantData, type DeleteCatalogVariantError, type DeleteCatalogVariantErrors, type DeleteCatalogVariantResponse, type DeleteCatalogVariantResponses, type DeleteCouponCodeData, type DeleteCouponCodeError, type DeleteCouponCodeErrors, type DeleteCouponCodeResponse, type DeleteCouponCodeResponses, type DeleteCouponData, type DeleteCouponError, type DeleteCouponErrors, type DeleteCouponResponse, type DeleteCouponResponses, type DeleteCustomMetricData, type DeleteCustomMetricError, type DeleteCustomMetricErrors, type DeleteCustomMetricResponse, type DeleteCustomMetricResponses, type DeleteDataSourceData, type DeleteDataSourceError, type DeleteDataSourceErrors, type DeleteDataSourceResponse, type DeleteDataSourceResponses, type DeleteFlowData, type DeleteFlowError, type DeleteFlowErrors, type DeleteFlowResponse, type DeleteFlowResponses, type DeleteFormData, type DeleteFormError, type DeleteFormErrors, type DeleteFormResponse, type DeleteFormResponses, type DeleteListData, type DeleteListError, type DeleteListErrors, type DeleteListResponse, type DeleteListResponses, type DeletePushTokenData, type DeletePushTokenError, type DeletePushTokenErrors, type DeletePushTokenResponse, type DeletePushTokenResponses, type DeleteSegmentData, type DeleteSegmentError, type DeleteSegmentErrors, type DeleteSegmentResponse, type DeleteSegmentResponses, type DeleteTagData, type DeleteTagError, type DeleteTagErrors, type DeleteTagGroupData, type DeleteTagGroupError, type DeleteTagGroupErrors, type DeleteTagGroupResponse, type DeleteTagGroupResponse2, type DeleteTagGroupResponses, type DeleteTagResponse, type DeleteTagResponses, type DeleteTemplateData, type DeleteTemplateError, type DeleteTemplateErrors, type DeleteTemplateResponse, type DeleteTemplateResponses, type DeleteUniversalContentData, type DeleteUniversalContentError, type DeleteUniversalContentErrors, type DeleteUniversalContentResponse, type DeleteUniversalContentResponses, type DeleteWebFeedData, type DeleteWebFeedError, type DeleteWebFeedErrors, type DeleteWebFeedResponse, type DeleteWebFeedResponses, type DeleteWebhookData, type DeleteWebhookError, type DeleteWebhookErrors, type DeleteWebhookResponse, type DeleteWebhookResponses, type Device, type DeviceEnum, type DeviceMetadata, type DeviceProperties, type DollarSignAgeGatedDateOfBirthEnum, type DollarSignEmailEnum, type DoubleOptinFilter, type DropShadow, type DropShadowBlock, type DropShadowEnum, type Dropdown, type DropdownEnum, type DropdownProperties, type DropdownStyles, type DynamicButton, type DynamicEnum, type DynamicTrackingParam, type EffectiveDateEnum, type EffectiveDateFilter, type Email, type EmailChannel, type EmailContent, type EmailContentSubObject, type EmailEnum, type EmailMarketing, type EmailMarketingListSuppression, type EmailMarketingSuppression, type EmailMessageDefinition, type EmailProperties, type EmailSendOptions, type EmailStyles, type EmailSubscriptionParameters, type EmailUnsubscriptionParameters, type EncodedFormResponseObjectResource, type EqualsEnum, type EqualsStringFilter, type ErrorMessages, type ErrorSource, type EventBulkCreateEnum, type EventBulkCreateJobEnum, type EventCreateQueryV2, type EventCreateQueryV2ResourceObject, type EventEnum, type EventProfileCreateQueryResourceObject, type EventResponseObjectResource, type EventsBulkCreateJob, type EventsBulkCreateJobResourceObject, type EventsBulkCreateQuery, type EventsBulkCreateQueryResourceObject, type ExistenceEnum, type ExistenceOperatorExistenceFilter, type ExitIntent, type ExitIntentEnum, type ExplicitlyReachable, type ExplicitlyReachableEnum, type ExplicitlyUnreachable, type ExplicitlyUnreachableEnum, type FailedAgeGateEnum, type FailedAgeGateMethodFilter, type FakeEnum, type FalseOrMisleadingEnum, type FeaturedEnum, type FixedEnum, type FixedTimerConfiguration, type FlowActionEncodedResponseObjectResource, type FlowActionEnum, type FlowActionUpdateQuery, type FlowActionUpdateQueryResourceObject, type FlowCreateQuery, type FlowCreateQueryResourceObject, type FlowDefinition, type FlowEmail, type FlowEnum, type FlowInternalAlert, type FlowMessageEncodedResponseObjectResource, type FlowMessageEnum, type FlowPushNotification, type FlowResponseObjectResource, type FlowSeriesReportEnum, type FlowSeriesRequestDto, type FlowSeriesRequestDtoResourceObject, type FlowSms, type FlowTrackingSettingDynamicParam, type FlowTrackingSettingStaticParam, type FlowUpdateQuery, type FlowUpdateQueryResourceObject, type FlowV2ResponseObjectResource, type FlowValuesReportEnum, type FlowValuesRequestDto, type FlowValuesRequestDtoResourceObject, type FlowWebhook, type FlowWhatsApp, type FlowsProfileMetricCondition, type FormCreateQuery, type FormCreateQueryResourceObject, type FormDefinition, type FormEnum, type FormMethodFilter, type FormResponseObjectResource, type FormSeriesReportEnum, type FormSeriesRequestDto, type FormSeriesRequestDtoResourceObject, type FormSubscribeFilter, type FormValuesReportEnum, type FormValuesRequestDto, type FormValuesRequestDtoResourceObject, type FormVersionAbTest, type FormVersionEnum, type FormVersionResponseObjectResource, type GetAccountData, type GetAccountError, type GetAccountErrors, type GetAccountResponse, type GetAccountResponse2, type GetAccountResponseCollection, type GetAccountResponses, type GetAccountsData, type GetAccountsError, type GetAccountsErrors, type GetAccountsResponse, type GetAccountsResponses, type GetActionForFlowMessageData, type GetActionForFlowMessageError, type GetActionForFlowMessageErrors, type GetActionForFlowMessageResponse, type GetActionForFlowMessageResponses, type GetActionIdForFlowMessageData, type GetActionIdForFlowMessageError, type GetActionIdForFlowMessageErrors, type GetActionIdForFlowMessageResponse, type GetActionIdForFlowMessageResponses, type GetActionIdsForFlowData, type GetActionIdsForFlowError, type GetActionIdsForFlowErrors, type GetActionIdsForFlowResponse, type GetActionIdsForFlowResponses, type GetActionsForFlowData, type GetActionsForFlowError, type GetActionsForFlowErrors, type GetActionsForFlowResponse, type GetActionsForFlowResponses, type GetAllUniversalContentData, type GetAllUniversalContentError, type GetAllUniversalContentErrors, type GetAllUniversalContentResponse, type GetAllUniversalContentResponses, type GetBulkCreateCatalogItemsJobData, type GetBulkCreateCatalogItemsJobError, type GetBulkCreateCatalogItemsJobErrors, type GetBulkCreateCatalogItemsJobResponse, type GetBulkCreateCatalogItemsJobResponses, type GetBulkCreateCatalogItemsJobsData, type GetBulkCreateCatalogItemsJobsError, type GetBulkCreateCatalogItemsJobsErrors, type GetBulkCreateCatalogItemsJobsResponse, type GetBulkCreateCatalogItemsJobsResponses, type GetBulkCreateCategoriesJobData, type GetBulkCreateCategoriesJobError, type GetBulkCreateCategoriesJobErrors, type GetBulkCreateCategoriesJobResponse, type GetBulkCreateCategoriesJobResponses, type GetBulkCreateCategoriesJobsData, type GetBulkCreateCategoriesJobsError, type GetBulkCreateCategoriesJobsErrors, type GetBulkCreateCategoriesJobsResponse, type GetBulkCreateCategoriesJobsResponses, type GetBulkCreateCouponCodeJobsData, type GetBulkCreateCouponCodeJobsError, type GetBulkCreateCouponCodeJobsErrors, type GetBulkCreateCouponCodeJobsResponse, type GetBulkCreateCouponCodeJobsResponses, type GetBulkCreateCouponCodesJobData, type GetBulkCreateCouponCodesJobError, type GetBulkCreateCouponCodesJobErrors, type GetBulkCreateCouponCodesJobResponse, type GetBulkCreateCouponCodesJobResponses, type GetBulkCreateVariantsJobData, type GetBulkCreateVariantsJobError, type GetBulkCreateVariantsJobErrors, type GetBulkCreateVariantsJobResponse, type GetBulkCreateVariantsJobResponses, type GetBulkCreateVariantsJobsData, type GetBulkCreateVariantsJobsError, type GetBulkCreateVariantsJobsErrors, type GetBulkCreateVariantsJobsResponse, type GetBulkCreateVariantsJobsResponses, type GetBulkDeleteCatalogItemsJobData, type GetBulkDeleteCatalogItemsJobError, type GetBulkDeleteCatalogItemsJobErrors, type GetBulkDeleteCatalogItemsJobResponse, type GetBulkDeleteCatalogItemsJobResponses, type GetBulkDeleteCatalogItemsJobsData, type GetBulkDeleteCatalogItemsJobsError, type GetBulkDeleteCatalogItemsJobsErrors, type GetBulkDeleteCatalogItemsJobsResponse, type GetBulkDeleteCatalogItemsJobsResponses, type GetBulkDeleteCategoriesJobData, type GetBulkDeleteCategoriesJobError, type GetBulkDeleteCategoriesJobErrors, type GetBulkDeleteCategoriesJobResponse, type GetBulkDeleteCategoriesJobResponses, type GetBulkDeleteCategoriesJobsData, type GetBulkDeleteCategoriesJobsError, type GetBulkDeleteCategoriesJobsErrors, type GetBulkDeleteCategoriesJobsResponse, type GetBulkDeleteCategoriesJobsResponses, type GetBulkDeleteVariantsJobData, type GetBulkDeleteVariantsJobError, type GetBulkDeleteVariantsJobErrors, type GetBulkDeleteVariantsJobResponse, type GetBulkDeleteVariantsJobResponses, type GetBulkDeleteVariantsJobsData, type GetBulkDeleteVariantsJobsError, type GetBulkDeleteVariantsJobsErrors, type GetBulkDeleteVariantsJobsResponse, type GetBulkDeleteVariantsJobsResponses, type GetBulkImportProfilesJobData, type GetBulkImportProfilesJobError, type GetBulkImportProfilesJobErrors, type GetBulkImportProfilesJobResponse, type GetBulkImportProfilesJobResponses, type GetBulkImportProfilesJobsData, type GetBulkImportProfilesJobsError, type GetBulkImportProfilesJobsErrors, type GetBulkImportProfilesJobsResponse, type GetBulkImportProfilesJobsResponses, type GetBulkProfileSuppressionsCreateJobResponse, type GetBulkProfileSuppressionsCreateJobResponseCollection, type GetBulkProfileSuppressionsRemoveJobResponse, type GetBulkProfileSuppressionsRemoveJobResponseCollection, type GetBulkSuppressProfilesJobData, type GetBulkSuppressProfilesJobError, type GetBulkSuppressProfilesJobErrors, type GetBulkSuppressProfilesJobResponse, type GetBulkSuppressProfilesJobResponses, type GetBulkSuppressProfilesJobsData, type GetBulkSuppressProfilesJobsError, type GetBulkSuppressProfilesJobsErrors, type GetBulkSuppressProfilesJobsResponse, type GetBulkSuppressProfilesJobsResponses, type GetBulkUnsuppressProfilesJobData, type GetBulkUnsuppressProfilesJobError, type GetBulkUnsuppressProfilesJobErrors, type GetBulkUnsuppressProfilesJobResponse, type GetBulkUnsuppressProfilesJobResponses, type GetBulkUnsuppressProfilesJobsData, type GetBulkUnsuppressProfilesJobsError, type GetBulkUnsuppressProfilesJobsErrors, type GetBulkUnsuppressProfilesJobsResponse, type GetBulkUnsuppressProfilesJobsResponses, type GetBulkUpdateCatalogItemsJobData, type GetBulkUpdateCatalogItemsJobError, type GetBulkUpdateCatalogItemsJobErrors, type GetBulkUpdateCatalogItemsJobResponse, type GetBulkUpdateCatalogItemsJobResponses, type GetBulkUpdateCatalogItemsJobsData, type GetBulkUpdateCatalogItemsJobsError, type GetBulkUpdateCatalogItemsJobsErrors, type GetBulkUpdateCatalogItemsJobsResponse, type GetBulkUpdateCatalogItemsJobsResponses, type GetBulkUpdateCategoriesJobData, type GetBulkUpdateCategoriesJobError, type GetBulkUpdateCategoriesJobErrors, type GetBulkUpdateCategoriesJobResponse, type GetBulkUpdateCategoriesJobResponses, type GetBulkUpdateCategoriesJobsData, type GetBulkUpdateCategoriesJobsError, type GetBulkUpdateCategoriesJobsErrors, type GetBulkUpdateCategoriesJobsResponse, type GetBulkUpdateCategoriesJobsResponses, type GetBulkUpdateVariantsJobData, type GetBulkUpdateVariantsJobError, type GetBulkUpdateVariantsJobErrors, type GetBulkUpdateVariantsJobResponse, type GetBulkUpdateVariantsJobResponses, type GetBulkUpdateVariantsJobsData, type GetBulkUpdateVariantsJobsError, type GetBulkUpdateVariantsJobsErrors, type GetBulkUpdateVariantsJobsResponse, type GetBulkUpdateVariantsJobsResponses, type GetCampaignData, type GetCampaignError, type GetCampaignErrors, type GetCampaignForCampaignMessageData, type GetCampaignForCampaignMessageError, type GetCampaignForCampaignMessageErrors, type GetCampaignForCampaignMessageResponse, type GetCampaignForCampaignMessageResponses, type GetCampaignIdForCampaignMessageData, type GetCampaignIdForCampaignMessageError, type GetCampaignIdForCampaignMessageErrors, type GetCampaignIdForCampaignMessageResponse, type GetCampaignIdForCampaignMessageResponses, type GetCampaignIdsForTagData, type GetCampaignIdsForTagError, type GetCampaignIdsForTagErrors, type GetCampaignIdsForTagResponse, type GetCampaignIdsForTagResponses, type GetCampaignMessageCampaignRelationshipResponse, type GetCampaignMessageData, type GetCampaignMessageError, type GetCampaignMessageErrors, type GetCampaignMessageImageRelationshipResponse, type GetCampaignMessageResponse, type GetCampaignMessageResponseCollectionCompoundDocument, type GetCampaignMessageResponseCompoundDocument, type GetCampaignMessageResponses, type GetCampaignMessageTemplateRelationshipResponse, type GetCampaignMessagesRelationshipsResponseCollection, type GetCampaignRecipientEstimationData, type GetCampaignRecipientEstimationError, type GetCampaignRecipientEstimationErrors, type GetCampaignRecipientEstimationJobData, type GetCampaignRecipientEstimationJobError, type GetCampaignRecipientEstimationJobErrors, type GetCampaignRecipientEstimationJobResponse, type GetCampaignRecipientEstimationJobResponse2, type GetCampaignRecipientEstimationJobResponses, type GetCampaignRecipientEstimationResponse, type GetCampaignRecipientEstimationResponse2, type GetCampaignRecipientEstimationResponses, type GetCampaignResponse, type GetCampaignResponse2, type GetCampaignResponseCollectionCompoundDocument, type GetCampaignResponseCompoundDocument, type GetCampaignResponses, type GetCampaignSendJobData, type GetCampaignSendJobError, type GetCampaignSendJobErrors, type GetCampaignSendJobResponse, type GetCampaignSendJobResponse2, type GetCampaignSendJobResponses, type GetCampaignTagsRelationshipsResponseCollection, type GetCampaignsData, type GetCampaignsError, type GetCampaignsErrors, type GetCampaignsResponse, type GetCampaignsResponses, type GetCatalogCategoriesData, type GetCatalogCategoriesError, type GetCatalogCategoriesErrors, type GetCatalogCategoriesResponse, type GetCatalogCategoriesResponses, type GetCatalogCategoryCreateJobResponseCollectionCompoundDocument, type GetCatalogCategoryCreateJobResponseCompoundDocument, type GetCatalogCategoryData, type GetCatalogCategoryDeleteJobResponse, type GetCatalogCategoryDeleteJobResponseCollection, type GetCatalogCategoryError, type GetCatalogCategoryErrors, type GetCatalogCategoryItemsRelationshipsResponseCollection, type GetCatalogCategoryResponse, type GetCatalogCategoryResponse2, type GetCatalogCategoryResponseCollection, type GetCatalogCategoryResponses, type GetCatalogCategoryUpdateJobResponseCollectionCompoundDocument, type GetCatalogCategoryUpdateJobResponseCompoundDocument, type GetCatalogItemCategoriesRelationshipsResponseCollection, type GetCatalogItemCreateJobResponseCollectionCompoundDocument, type GetCatalogItemCreateJobResponseCompoundDocument, type GetCatalogItemData, type GetCatalogItemDeleteJobResponse, type GetCatalogItemDeleteJobResponseCollection, type GetCatalogItemError, type GetCatalogItemErrors, type GetCatalogItemResponse, type GetCatalogItemResponseCollectionCompoundDocument, type GetCatalogItemResponseCompoundDocument, type GetCatalogItemResponses, type GetCatalogItemUpdateJobResponseCollectionCompoundDocument, type GetCatalogItemUpdateJobResponseCompoundDocument, type GetCatalogItemVariantsRelationshipsResponseCollection, type GetCatalogItemsData, type GetCatalogItemsError, type GetCatalogItemsErrors, type GetCatalogItemsResponse, type GetCatalogItemsResponses, type GetCatalogVariantCreateJobResponseCollectionCompoundDocument, type GetCatalogVariantCreateJobResponseCompoundDocument, type GetCatalogVariantData, type GetCatalogVariantDeleteJobResponse, type GetCatalogVariantDeleteJobResponseCollection, type GetCatalogVariantError, type GetCatalogVariantErrors, type GetCatalogVariantResponse, type GetCatalogVariantResponse2, type GetCatalogVariantResponseCollection, type GetCatalogVariantResponses, type GetCatalogVariantUpdateJobResponseCollectionCompoundDocument, type GetCatalogVariantUpdateJobResponseCompoundDocument, type GetCatalogVariantsData, type GetCatalogVariantsError, type GetCatalogVariantsErrors, type GetCatalogVariantsResponse, type GetCatalogVariantsResponses, type GetCategoriesForCatalogItemData, type GetCategoriesForCatalogItemError, type GetCategoriesForCatalogItemErrors, type GetCategoriesForCatalogItemResponse, type GetCategoriesForCatalogItemResponses, type GetCategoryIdsForCatalogItemData, type GetCategoryIdsForCatalogItemError, type GetCategoryIdsForCatalogItemErrors, type GetCategoryIdsForCatalogItemResponse, type GetCategoryIdsForCatalogItemResponses, type GetClientReviewResponseDtoCollection, type GetClientReviewValuesReportsData, type GetClientReviewValuesReportsError, type GetClientReviewValuesReportsErrors, type GetClientReviewValuesReportsResponse, type GetClientReviewValuesReportsResponses, type GetClientReviewsData, type GetClientReviewsError, type GetClientReviewsErrors, type GetClientReviewsResponse, type GetClientReviewsResponses, type GetCouponCodeCouponRelationshipResponse, type GetCouponCodeCreateJobResponseCollectionCompoundDocument, type GetCouponCodeCreateJobResponseCompoundDocument, type GetCouponCodeData, type GetCouponCodeError, type GetCouponCodeErrors, type GetCouponCodeIdsForCouponData, type GetCouponCodeIdsForCouponError, type GetCouponCodeIdsForCouponErrors, type GetCouponCodeIdsForCouponResponse, type GetCouponCodeIdsForCouponResponses, type GetCouponCodeResponse, type GetCouponCodeResponseCollection, type GetCouponCodeResponseCollectionCompoundDocument, type GetCouponCodeResponseCompoundDocument, type GetCouponCodeResponses, type GetCouponCodesData, type GetCouponCodesError, type GetCouponCodesErrors, type GetCouponCodesForCouponData, type GetCouponCodesForCouponError, type GetCouponCodesForCouponErrors, type GetCouponCodesForCouponResponse, type GetCouponCodesForCouponResponses, type GetCouponCodesRelationshipsResponseCollection, type GetCouponCodesResponse, type GetCouponCodesResponses, type GetCouponData, type GetCouponError, type GetCouponErrors, type GetCouponForCouponCodeData, type GetCouponForCouponCodeError, type GetCouponForCouponCodeErrors, type GetCouponForCouponCodeResponse, type GetCouponForCouponCodeResponses, type GetCouponIdForCouponCodeData, type GetCouponIdForCouponCodeError, type GetCouponIdForCouponCodeErrors, type GetCouponIdForCouponCodeResponse, type GetCouponIdForCouponCodeResponses, type GetCouponResponse, type GetCouponResponse2, type GetCouponResponseCollection, type GetCouponResponses, type GetCouponsData, type GetCouponsError, type GetCouponsErrors, type GetCouponsResponse, type GetCouponsResponses, type GetCustomMetricData, type GetCustomMetricError, type GetCustomMetricErrors, type GetCustomMetricForMappedMetricData, type GetCustomMetricForMappedMetricError, type GetCustomMetricForMappedMetricErrors, type GetCustomMetricForMappedMetricResponse, type GetCustomMetricForMappedMetricResponses, type GetCustomMetricIdForMappedMetricData, type GetCustomMetricIdForMappedMetricError, type GetCustomMetricIdForMappedMetricErrors, type GetCustomMetricIdForMappedMetricResponse, type GetCustomMetricIdForMappedMetricResponses, type GetCustomMetricMetricsRelationshipsResponseCollection, type GetCustomMetricResponse, type GetCustomMetricResponse2, type GetCustomMetricResponseCollectionCompoundDocument, type GetCustomMetricResponseCompoundDocument, type GetCustomMetricResponses, type GetCustomMetricsData, type GetCustomMetricsError, type GetCustomMetricsErrors, type GetCustomMetricsResponse, type GetCustomMetricsResponses, type GetDataSourceData, type GetDataSourceError, type GetDataSourceErrors, type GetDataSourceResponse, type GetDataSourceResponse2, type GetDataSourceResponseCollection, type GetDataSourceResponses, type GetDataSourcesData, type GetDataSourcesError, type GetDataSourcesErrors, type GetDataSourcesResponse, type GetDataSourcesResponses, type GetEncodedFormResponse, type GetErrorsForBulkImportProfilesJobData, type GetErrorsForBulkImportProfilesJobError, type GetErrorsForBulkImportProfilesJobErrors, type GetErrorsForBulkImportProfilesJobResponse, type GetErrorsForBulkImportProfilesJobResponses, type GetEventData, type GetEventError, type GetEventErrors, type GetEventMetricRelationshipResponse, type GetEventProfileRelationshipResponse, type GetEventResponse, type GetEventResponseCollectionCompoundDocument, type GetEventResponseCompoundDocument, type GetEventResponses, type GetEventsData, type GetEventsError, type GetEventsErrors, type GetEventsResponse, type GetEventsResponses, type GetFlowActionData, type GetFlowActionEncodedResponse, type GetFlowActionEncodedResponseCollection, type GetFlowActionEncodedResponseCompoundDocument, type GetFlowActionError, type GetFlowActionErrors, type GetFlowActionFlowMessageRelationshipResponseCollection, type GetFlowActionFlowRelationshipResponse, type GetFlowActionMessagesData, type GetFlowActionMessagesError, type GetFlowActionMessagesErrors, type GetFlowActionMessagesResponse, type GetFlowActionMessagesResponses, type GetFlowActionResponse, type GetFlowActionResponses, type GetFlowData, type GetFlowError, type GetFlowErrors, type GetFlowFlowActionRelationshipListResponseCollection, type GetFlowForFlowActionData, type GetFlowForFlowActionError, type GetFlowForFlowActionErrors, type GetFlowForFlowActionResponse, type GetFlowForFlowActionResponses, type GetFlowIdForFlowActionData, type GetFlowIdForFlowActionError, type GetFlowIdForFlowActionErrors, type GetFlowIdForFlowActionResponse, type GetFlowIdForFlowActionResponses, type GetFlowIdsForTagData, type GetFlowIdsForTagError, type GetFlowIdsForTagErrors, type GetFlowIdsForTagResponse, type GetFlowIdsForTagResponses, type GetFlowMessageActionRelationshipResponse, type GetFlowMessageData, type GetFlowMessageEncodedResponseCollection, type GetFlowMessageEncodedResponseCompoundDocument, type GetFlowMessageError, type GetFlowMessageErrors, type GetFlowMessageResponse, type GetFlowMessageResponses, type GetFlowMessageTemplateRelationshipResponse, type GetFlowResponse, type GetFlowResponse2, type GetFlowResponseCollection, type GetFlowResponseCollectionCompoundDocument, type GetFlowResponses, type GetFlowTagsRelationshipsResponseCollection, type GetFlowV2ResponseCompoundDocument, type GetFlowsData, type GetFlowsError, type GetFlowsErrors, type GetFlowsResponse, type GetFlowsResponses, type GetFlowsTriggeredByListData, type GetFlowsTriggeredByListError, type GetFlowsTriggeredByListErrors, type GetFlowsTriggeredByListResponse, type GetFlowsTriggeredByListResponses, type GetFlowsTriggeredByMetricData, type GetFlowsTriggeredByMetricError, type GetFlowsTriggeredByMetricErrors, type GetFlowsTriggeredByMetricResponse, type GetFlowsTriggeredByMetricResponses, type GetFlowsTriggeredBySegmentData, type GetFlowsTriggeredBySegmentError, type GetFlowsTriggeredBySegmentErrors, type GetFlowsTriggeredBySegmentResponse, type GetFlowsTriggeredBySegmentResponses, type GetFormData, type GetFormError, type GetFormErrors, type GetFormForFormVersionData, type GetFormForFormVersionError, type GetFormForFormVersionErrors, type GetFormForFormVersionResponse, type GetFormForFormVersionResponses, type GetFormIdForFormVersionData, type GetFormIdForFormVersionError, type GetFormIdForFormVersionErrors, type GetFormIdForFormVersionResponse, type GetFormIdForFormVersionResponses, type GetFormResponse, type GetFormResponse2, type GetFormResponseCollection, type GetFormResponses, type GetFormVersionData, type GetFormVersionError, type GetFormVersionErrors, type GetFormVersionFormRelationshipResponse, type GetFormVersionResponse, type GetFormVersionResponse2, type GetFormVersionResponseCollection, type GetFormVersionResponses, type GetFormVersionsRelationshipsResponseCollection, type GetFormsData, type GetFormsError, type GetFormsErrors, type GetFormsResponse, type GetFormsResponses, type GetIdsForFlowsTriggeredByListData, type GetIdsForFlowsTriggeredByListError, type GetIdsForFlowsTriggeredByListErrors, type GetIdsForFlowsTriggeredByListResponse, type GetIdsForFlowsTriggeredByListResponses, type GetIdsForFlowsTriggeredByMetricData, type GetIdsForFlowsTriggeredByMetricError, type GetIdsForFlowsTriggeredByMetricErrors, type GetIdsForFlowsTriggeredByMetricResponse, type GetIdsForFlowsTriggeredByMetricResponses, type GetIdsForFlowsTriggeredBySegmentData, type GetIdsForFlowsTriggeredBySegmentError, type GetIdsForFlowsTriggeredBySegmentErrors, type GetIdsForFlowsTriggeredBySegmentResponse, type GetIdsForFlowsTriggeredBySegmentResponses, type GetImageData, type GetImageError, type GetImageErrors, type GetImageForCampaignMessageData, type GetImageForCampaignMessageError, type GetImageForCampaignMessageErrors, type GetImageForCampaignMessageResponse, type GetImageForCampaignMessageResponses, type GetImageIdForCampaignMessageData, type GetImageIdForCampaignMessageError, type GetImageIdForCampaignMessageErrors, type GetImageIdForCampaignMessageResponse, type GetImageIdForCampaignMessageResponses, type GetImageResponse, type GetImageResponse2, type GetImageResponseCollection, type GetImageResponses, type GetImagesData, type GetImagesError, type GetImagesErrors, type GetImagesResponse, type GetImagesResponses, type GetImportErrorResponseCollection, type GetItemIdsForCatalogCategoryData, type GetItemIdsForCatalogCategoryError, type GetItemIdsForCatalogCategoryErrors, type GetItemIdsForCatalogCategoryResponse, type GetItemIdsForCatalogCategoryResponses, type GetItemsForCatalogCategoryData, type GetItemsForCatalogCategoryError, type GetItemsForCatalogCategoryErrors, type GetItemsForCatalogCategoryResponse, type GetItemsForCatalogCategoryResponses, type GetListData, type GetListError, type GetListErrors, type GetListFlowTriggersRelationshipsResponseCollection, type GetListForBulkImportProfilesJobData, type GetListForBulkImportProfilesJobError, type GetListForBulkImportProfilesJobErrors, type GetListForBulkImportProfilesJobResponse, type GetListForBulkImportProfilesJobResponses, type GetListIdsForBulkImportProfilesJobData, type GetListIdsForBulkImportProfilesJobError, type GetListIdsForBulkImportProfilesJobErrors, type GetListIdsForBulkImportProfilesJobResponse, type GetListIdsForBulkImportProfilesJobResponses, type GetListIdsForProfileData, type GetListIdsForProfileError, type GetListIdsForProfileErrors, type GetListIdsForProfileResponse, type GetListIdsForProfileResponses, type GetListIdsForTagData, type GetListIdsForTagError, type GetListIdsForTagErrors, type GetListIdsForTagResponse, type GetListIdsForTagResponses, type GetListListResponseCollectionCompoundDocument, type GetListMemberResponseCollection, type GetListProfilesRelationshipsResponseCollection, type GetListResponse, type GetListResponseCollection, type GetListResponses, type GetListRetrieveResponseCompoundDocument, type GetListTagsRelationshipsResponseCollection, type GetListsData, type GetListsError, type GetListsErrors, type GetListsForProfileData, type GetListsForProfileError, type GetListsForProfileErrors, type GetListsForProfileResponse, type GetListsForProfileResponses, type GetListsResponse, type GetListsResponses, type GetMappedMetricCustomMetricRelationshipResponse, type GetMappedMetricData, type GetMappedMetricError, type GetMappedMetricErrors, type GetMappedMetricMetricRelationshipResponse, type GetMappedMetricResponse, type GetMappedMetricResponseCollectionCompoundDocument, type GetMappedMetricResponseCompoundDocument, type GetMappedMetricResponses, type GetMappedMetricsData, type GetMappedMetricsError, type GetMappedMetricsErrors, type GetMappedMetricsResponse, type GetMappedMetricsResponses, type GetMessageIdsForCampaignData, type GetMessageIdsForCampaignError, type GetMessageIdsForCampaignErrors, type GetMessageIdsForCampaignResponse, type GetMessageIdsForCampaignResponses, type GetMessageIdsForFlowActionData, type GetMessageIdsForFlowActionError, type GetMessageIdsForFlowActionErrors, type GetMessageIdsForFlowActionResponse, type GetMessageIdsForFlowActionResponses, type GetMessagesForCampaignData, type GetMessagesForCampaignError, type GetMessagesForCampaignErrors, type GetMessagesForCampaignResponse, type GetMessagesForCampaignResponses, type GetMetricData, type GetMetricError, type GetMetricErrors, type GetMetricFlowTriggersRelationshipsResponseCollection, type GetMetricForEventData, type GetMetricForEventError, type GetMetricForEventErrors, type GetMetricForEventResponse, type GetMetricForEventResponses, type GetMetricForMappedMetricData, type GetMetricForMappedMetricError, type GetMetricForMappedMetricErrors, type GetMetricForMappedMetricResponse, type GetMetricForMappedMetricResponses, type GetMetricForMetricPropertyData, type GetMetricForMetricPropertyError, type GetMetricForMetricPropertyErrors, type GetMetricForMetricPropertyResponse, type GetMetricForMetricPropertyResponses, type GetMetricIdForEventData, type GetMetricIdForEventError, type GetMetricIdForEventErrors, type GetMetricIdForEventResponse, type GetMetricIdForEventResponses, type GetMetricIdForMappedMetricData, type GetMetricIdForMappedMetricError, type GetMetricIdForMappedMetricErrors, type GetMetricIdForMappedMetricResponse, type GetMetricIdForMappedMetricResponses, type GetMetricIdForMetricPropertyData, type GetMetricIdForMetricPropertyError, type GetMetricIdForMetricPropertyErrors, type GetMetricIdForMetricPropertyResponse, type GetMetricIdForMetricPropertyResponses, type GetMetricIdsForCustomMetricData, type GetMetricIdsForCustomMetricError, type GetMetricIdsForCustomMetricErrors, type GetMetricIdsForCustomMetricResponse, type GetMetricIdsForCustomMetricResponses, type GetMetricPropertiesRelationshipsResponseCollection, type GetMetricPropertyData, type GetMetricPropertyError, type GetMetricPropertyErrors, type GetMetricPropertyMetricRelationshipResponse, type GetMetricPropertyResponse, type GetMetricPropertyResponseCollection, type GetMetricPropertyResponseCompoundDocument, type GetMetricPropertyResponses, type GetMetricResponse, type GetMetricResponse2, type GetMetricResponseCollection, type GetMetricResponseCollectionCompoundDocument, type GetMetricResponseCompoundDocument, type GetMetricResponses, type GetMetricsData, type GetMetricsError, type GetMetricsErrors, type GetMetricsForCustomMetricData, type GetMetricsForCustomMetricError, type GetMetricsForCustomMetricErrors, type GetMetricsForCustomMetricResponse, type GetMetricsForCustomMetricResponses, type GetMetricsResponse, type GetMetricsResponses, type GetProfileBulkImportJobListsRelationshipsResponseCollection, type GetProfileBulkImportJobProfilesRelationshipsResponseCollection, type GetProfileData, type GetProfileError, type GetProfileErrors, type GetProfileForEventData, type GetProfileForEventError, type GetProfileForEventErrors, type GetProfileForEventResponse, type GetProfileForEventResponses, type GetProfileForPushTokenData, type GetProfileForPushTokenError, type GetProfileForPushTokenErrors, type GetProfileForPushTokenResponse, type GetProfileForPushTokenResponses, type GetProfileIdForEventData, type GetProfileIdForEventError, type GetProfileIdForEventErrors, type GetProfileIdForEventResponse, type GetProfileIdForEventResponses, type GetProfileIdForPushTokenData, type GetProfileIdForPushTokenError, type GetProfileIdForPushTokenErrors, type GetProfileIdForPushTokenResponse, type GetProfileIdForPushTokenResponses, type GetProfileIdsForBulkImportProfilesJobData, type GetProfileIdsForBulkImportProfilesJobError, type GetProfileIdsForBulkImportProfilesJobErrors, type GetProfileIdsForBulkImportProfilesJobResponse, type GetProfileIdsForBulkImportProfilesJobResponses, type GetProfileIdsForListData, type GetProfileIdsForListError, type GetProfileIdsForListErrors, type GetProfileIdsForListResponse, type GetProfileIdsForListResponses, type GetProfileIdsForSegmentData, type GetProfileIdsForSegmentError, type GetProfileIdsForSegmentErrors, type GetProfileIdsForSegmentResponse, type GetProfileIdsForSegmentResponses, type GetProfileImportJobResponseCollectionCompoundDocument, type GetProfileImportJobResponseCompoundDocument, type GetProfileListsRelationshipsResponseCollection, type GetProfilePushTokensRelationshipsResponseCollection, type GetProfileResponse, type GetProfileResponse2, type GetProfileResponseCollection, type GetProfileResponseCollectionCompoundDocument, type GetProfileResponseCompoundDocument, type GetProfileResponses, type GetProfileSegmentsRelationshipsResponseCollection, type GetProfilesData, type GetProfilesError, type GetProfilesErrors, type GetProfilesForBulkImportProfilesJobData, type GetProfilesForBulkImportProfilesJobError, type GetProfilesForBulkImportProfilesJobErrors, type GetProfilesForBulkImportProfilesJobResponse, type GetProfilesForBulkImportProfilesJobResponses, type GetProfilesForListData, type GetProfilesForListError, type GetProfilesForListErrors, type GetProfilesForListResponse, type GetProfilesForListResponses, type GetProfilesForSegmentData, type GetProfilesForSegmentError, type GetProfilesForSegmentErrors, type GetProfilesForSegmentResponse, type GetProfilesForSegmentResponses, type GetProfilesResponse, type GetProfilesResponses, type GetPropertiesForMetricData, type GetPropertiesForMetricError, type GetPropertiesForMetricErrors, type GetPropertiesForMetricResponse, type GetPropertiesForMetricResponses, type GetPropertyIdsForMetricData, type GetPropertyIdsForMetricError, type GetPropertyIdsForMetricErrors, type GetPropertyIdsForMetricResponse, type GetPropertyIdsForMetricResponses, type GetPushTokenData, type GetPushTokenError, type GetPushTokenErrors, type GetPushTokenIdsForProfileData, type GetPushTokenIdsForProfileError, type GetPushTokenIdsForProfileErrors, type GetPushTokenIdsForProfileResponse, type GetPushTokenIdsForProfileResponses, type GetPushTokenProfileRelationshipResponse, type GetPushTokenResponse, type GetPushTokenResponseCollection, type GetPushTokenResponseCollectionCompoundDocument, type GetPushTokenResponseCompoundDocument, type GetPushTokenResponses, type GetPushTokensData, type GetPushTokensError, type GetPushTokensErrors, type GetPushTokensForProfileData, type GetPushTokensForProfileError, type GetPushTokensForProfileErrors, type GetPushTokensForProfileResponse, type GetPushTokensForProfileResponses, type GetPushTokensResponse, type GetPushTokensResponses, type GetReviewData, type GetReviewError, type GetReviewErrors, type GetReviewResponse, type GetReviewResponseDtoCollectionCompoundDocument, type GetReviewResponseDtoCompoundDocument, type GetReviewResponses, type GetReviewValuesReportResponseCollection, type GetReviewsData, type GetReviewsError, type GetReviewsErrors, type GetReviewsResponse, type GetReviewsResponses, type GetSegmentData, type GetSegmentError, type GetSegmentErrors, type GetSegmentFlowTriggersRelationshipsResponseCollection, type GetSegmentIdsForProfileData, type GetSegmentIdsForProfileError, type GetSegmentIdsForProfileErrors, type GetSegmentIdsForProfileResponse, type GetSegmentIdsForProfileResponses, type GetSegmentIdsForTagData, type GetSegmentIdsForTagError, type GetSegmentIdsForTagErrors, type GetSegmentIdsForTagResponse, type GetSegmentIdsForTagResponses, type GetSegmentListResponseCollectionCompoundDocument, type GetSegmentMemberResponseCollection, type GetSegmentProfilesRelationshipsResponseCollection, type GetSegmentResponse, type GetSegmentResponseCollection, type GetSegmentResponses, type GetSegmentRetrieveResponseCompoundDocument, type GetSegmentTagsRelationshipsResponseCollection, type GetSegmentsData, type GetSegmentsError, type GetSegmentsErrors, type GetSegmentsForProfileData, type GetSegmentsForProfileError, type GetSegmentsForProfileErrors, type GetSegmentsForProfileResponse, type GetSegmentsForProfileResponses, type GetSegmentsResponse, type GetSegmentsResponses, type GetTagCampaignRelationshipsResponseCollection, type GetTagData, type GetTagError, type GetTagErrors, type GetTagFlowRelationshipsResponseCollection, type GetTagGroupData, type GetTagGroupError, type GetTagGroupErrors, type GetTagGroupForTagData, type GetTagGroupForTagError, type GetTagGroupForTagErrors, type GetTagGroupForTagResponse, type GetTagGroupForTagResponses, type GetTagGroupIdForTagData, type GetTagGroupIdForTagError, type GetTagGroupIdForTagErrors, type GetTagGroupIdForTagResponse, type GetTagGroupIdForTagResponses, type GetTagGroupRelationshipResponse, type GetTagGroupResponse, type GetTagGroupResponse2, type GetTagGroupResponseCollection, type GetTagGroupResponses, type GetTagGroupTagsRelationshipsResponseCollection, type GetTagGroupsData, type GetTagGroupsError, type GetTagGroupsErrors, type GetTagGroupsResponse, type GetTagGroupsResponses, type GetTagIdsForCampaignData, type GetTagIdsForCampaignError, type GetTagIdsForCampaignErrors, type GetTagIdsForCampaignResponse, type GetTagIdsForCampaignResponses, type GetTagIdsForFlowData, type GetTagIdsForFlowError, type GetTagIdsForFlowErrors, type GetTagIdsForFlowResponse, type GetTagIdsForFlowResponses, type GetTagIdsForListData, type GetTagIdsForListError, type GetTagIdsForListErrors, type GetTagIdsForListResponse, type GetTagIdsForListResponses, type GetTagIdsForSegmentData, type GetTagIdsForSegmentError, type GetTagIdsForSegmentErrors, type GetTagIdsForSegmentResponse, type GetTagIdsForSegmentResponses, type GetTagIdsForTagGroupData, type GetTagIdsForTagGroupError, type GetTagIdsForTagGroupErrors, type GetTagIdsForTagGroupResponse, type GetTagIdsForTagGroupResponses, type GetTagListRelationshipsResponseCollection, type GetTagResponse, type GetTagResponseCollection, type GetTagResponseCollectionCompoundDocument, type GetTagResponseCompoundDocument, type GetTagResponses, type GetTagSegmentRelationshipsResponseCollection, type GetTagsData, type GetTagsError, type GetTagsErrors, type GetTagsForCampaignData, type GetTagsForCampaignError, type GetTagsForCampaignErrors, type GetTagsForCampaignResponse, type GetTagsForCampaignResponses, type GetTagsForFlowData, type GetTagsForFlowError, type GetTagsForFlowErrors, type GetTagsForFlowResponse, type GetTagsForFlowResponses, type GetTagsForListData, type GetTagsForListError, type GetTagsForListErrors, type GetTagsForListResponse, type GetTagsForListResponses, type GetTagsForSegmentData, type GetTagsForSegmentError, type GetTagsForSegmentErrors, type GetTagsForSegmentResponse, type GetTagsForSegmentResponses, type GetTagsForTagGroupData, type GetTagsForTagGroupError, type GetTagsForTagGroupErrors, type GetTagsForTagGroupResponse, type GetTagsForTagGroupResponses, type GetTagsResponse, type GetTagsResponses, type GetTemplateData, type GetTemplateError, type GetTemplateErrors, type GetTemplateForCampaignMessageData, type GetTemplateForCampaignMessageError, type GetTemplateForCampaignMessageErrors, type GetTemplateForCampaignMessageResponse, type GetTemplateForCampaignMessageResponses, type GetTemplateForFlowMessageData, type GetTemplateForFlowMessageError, type GetTemplateForFlowMessageErrors, type GetTemplateForFlowMessageResponse, type GetTemplateForFlowMessageResponses, type GetTemplateIdForCampaignMessageData, type GetTemplateIdForCampaignMessageError, type GetTemplateIdForCampaignMessageErrors, type GetTemplateIdForCampaignMessageResponse, type GetTemplateIdForCampaignMessageResponses, type GetTemplateIdForFlowMessageData, type GetTemplateIdForFlowMessageError, type GetTemplateIdForFlowMessageErrors, type GetTemplateIdForFlowMessageResponse, type GetTemplateIdForFlowMessageResponses, type GetTemplateResponse, type GetTemplateResponse2, type GetTemplateResponseCollection, type GetTemplateResponses, type GetTemplatesData, type GetTemplatesError, type GetTemplatesErrors, type GetTemplatesResponse, type GetTemplatesResponses, type GetTrackingSettingData, type GetTrackingSettingError, type GetTrackingSettingErrors, type GetTrackingSettingResponse, type GetTrackingSettingResponse2, type GetTrackingSettingResponseCollection, type GetTrackingSettingResponses, type GetTrackingSettingsData, type GetTrackingSettingsError, type GetTrackingSettingsErrors, type GetTrackingSettingsResponse, type GetTrackingSettingsResponses, type GetUniversalContentData, type GetUniversalContentError, type GetUniversalContentErrors, type GetUniversalContentResponse, type GetUniversalContentResponse2, type GetUniversalContentResponseCollection, type GetUniversalContentResponses, type GetVariantIdsForCatalogItemData, type GetVariantIdsForCatalogItemError, type GetVariantIdsForCatalogItemErrors, type GetVariantIdsForCatalogItemResponse, type GetVariantIdsForCatalogItemResponses, type GetVariantsForCatalogItemData, type GetVariantsForCatalogItemError, type GetVariantsForCatalogItemErrors, type GetVariantsForCatalogItemResponse, type GetVariantsForCatalogItemResponses, type GetVersionIdsForFormData, type GetVersionIdsForFormError, type GetVersionIdsForFormErrors, type GetVersionIdsForFormResponse, type GetVersionIdsForFormResponses, type GetVersionsForFormData, type GetVersionsForFormError, type GetVersionsForFormErrors, type GetVersionsForFormResponse, type GetVersionsForFormResponses, type GetWebFeedData, type GetWebFeedError, type GetWebFeedErrors, type GetWebFeedResponse, type GetWebFeedResponse2, type GetWebFeedResponseCollection, type GetWebFeedResponses, type GetWebFeedsData, type GetWebFeedsError, type GetWebFeedsErrors, type GetWebFeedsResponse, type GetWebFeedsResponses, type GetWebhookData, type GetWebhookError, type GetWebhookErrors, type GetWebhookResponse, type GetWebhookResponseCollectionCompoundDocument, type GetWebhookResponseCompoundDocument, type GetWebhookResponses, type GetWebhookTopicData, type GetWebhookTopicError, type GetWebhookTopicErrors, type GetWebhookTopicResponse, type GetWebhookTopicResponse2, type GetWebhookTopicResponseCollection, type GetWebhookTopicResponses, type GetWebhookTopicsData, type GetWebhookTopicsError, type GetWebhookTopicsErrors, type GetWebhookTopicsResponse, type GetWebhookTopicsResponses, type GetWebhooksData, type GetWebhooksError, type GetWebhooksErrors, type GetWebhooksResponse, type GetWebhooksResponses, type GoToInbox, type GoToInboxEnum, type GreaterThanEnum, type GreaterThanPositiveNumericFilter, type GroupingCompany, type GroupingProduct, type HasEmailMarketing, type HasEmailMarketingConsent, type HasEmailMarketingNeverSubscribed, type HasEmailMarketingSubscribed, type HasPushMarketing, type HasPushMarketingConsent, type HasSmsMarketingConsent, type HasSmsMarketingSubscribed, type HeaderBlock, type HeaderEnum, type HorizontalRuleBlock, type HorizontalRuleEnum, type HtmlBlock, type HtmlBlockData, type HtmlEnum, type HtmlText, type HtmlTextEnum, type HtmlTextProperties, type HtmlTextStyles, type IdentifiedProfiles, type IdentifiedProfilesEnum, type Image, type ImageAssetProperties, type ImageBlock, type ImageCreateQuery, type ImageCreateQueryResourceObject, type ImageDropShadowStyles, type ImageEnum, type ImagePartialUpdateQuery, type ImagePartialUpdateQueryResourceObject, type ImageProperties, type ImageResponseObjectResource, type ImageStyles, type ImageUploadQuery, type ImmediateEnum, type ImmediateSendStrategy, type ImplicitlyOrExplicitlyReachable, type ImplicitlyOrExplicitlyReachableEnum, type ImplicitlyOrExplicitlyUnreachable, type ImplicitlyOrExplicitlyUnreachableEnum, type ImplicitlyReachable, type ImplicitlyReachableEnum, type ImplicitlyUnreachable, type ImplicitlyUnreachableEnum, type ImportErrorEnum, type ImportErrorResponseObjectResource, type InEnum, type InStringArrayFilter, type InTheLastBaseRelativeDateFilter, type InTheLastEnum, type InboundMessageEnum, type InboundMessageMethodFilter, type Increment, type IncrementOneEnum, type InputStyles, type IntegerFilter, type IntegrationEnum, type InternalScheduledReportBuilderReportData, type InternalScheduledReportData, type InternalServiceAction, type InternalServiceActionData, type InternalServiceEnum, type InternalTrackEventData, type InternalUnknownServiceData, type InvalidEmailDateEnum, type InvalidEmailDateFilter, type IsDoubleOptInEnum, type IsRcsCapableEnum, type IsSetEnum, type IsSetExistenceFilter, type LessThanEnum, type LessThanPositiveNumericFilter, type Link, type LinkStyles, type ListContainsOperatorListContainsFilter, type ListCreateQuery, type ListCreateQueryResourceObject, type ListEnum, type ListLengthFilter, type ListListResponseObjectResource, type ListMemberResponseObjectResource, type ListMembersAddQuery, type ListMembersDeleteQuery, type ListPartialUpdateQuery, type ListPartialUpdateQueryResourceObject, type ListRegexOperatorListContainsFilter, type ListResponseObjectResource, type ListRetrieveResponseObjectResource, type ListSetFilter, type ListSubstringFilter, type ListTrigger, type ListUpdateAction, type ListUpdateActionData, type ListUpdateEnum, type ListsAndSegments, type ListsAndSegmentsEnum, type ListsAndSegmentsProperties, type LocalStaticSend, type Location, type LocationEnum, type LocationProperties, type LowInventoryCondition, type LowInventoryConditionConditionGroup, type LowInventoryConditionFilter, type LowInventoryEnum, type LowInventoryPropertyEnum, type LowInventoryTrigger, type MailboxProviderEnum, type MailboxProviderMethodFilter, type ManualAddEnum, type ManualAddManualMethodFilter, type ManualImportEnum, type ManualImportManualMethodFilter, type ManualImportMethodFilter, type ManualRemoveEnum, type ManualRemoveMethodFilter, type ManualSuppressionDateEnum, type ManualSuppressionDateFilter, type MappedMetricEnum, type MappedMetricPartialUpdateQuery, type MappedMetricPartialUpdateQueryResourceObject, type MappedMetricResponseObjectResource, type Margin, type MergeProfilesData, type MergeProfilesError, type MergeProfilesErrors, type MergeProfilesResponse, type MergeProfilesResponses, type MessageBlockedEnum, type MessageBlockedMethodFilter, type MethodEnum, type MethodFilter, type MetricAggregateEnum, type MetricAggregateQuery, type MetricAggregateQueryResourceObject, type MetricAggregateRowDto, type MetricCreateQueryResourceObject, type MetricEnum, type MetricPropertyCondition, type MetricPropertyConditionConditionGroup, type MetricPropertyConditionFilter, type MetricPropertyEnum, type MetricPropertyResponseObjectResource, type MetricResponseObjectResource, type MetricTrigger, type MobileOverlay, type MobilePushBadge, type MobilePushContent, type MobilePushContentCreate, type MobilePushContentUpdate, type MobilePushEnum, type MobilePushMessageSilentDefinition, type MobilePushMessageSilentDefinitionCreate, type MobilePushMessageSilentDefinitionUpdate, type MobilePushMessageStandardDefinition, type MobilePushMessageStandardDefinitionCreate, type MobilePushMessageStandardDefinitionUpdate, type MobilePushNoBadge, type MobilePushOptions, type MultiBranchSplitAction, type MultiBranchSplitActionData, type MultiBranchSplitBranch, type MultiBranchSplitEnum, type NeverSubscribedEnum, type NextStep, type NextStepEnum, type NextStepProperties, type NoEmailMarketing, type NoEmailMarketingConsent, type NoEmailMarketingNeverSubscribed, type NoEmailMarketingSubscribed, type NoEmailMarketingUnsubscribed, type NoPushMarketing, type NoPushMarketingConsent, type NoSmsMarketing, type NoSmsMarketingConsent, type NoSmsMarketingNeverSubscribed, type NoSmsMarketingUnsubscribed, type NonLocalStaticSend, type NotEqualsEnum, type NumericEnum, type NumericOperatorNumericFilter, type NumericRangeFilter, type ObjectLinks, type OneClickUnsubscribeEnum, type OneClickUnsubscribeMethodFilter, type OnlyRelatedLinks, type OnsiteProfileCreateQuery, type OnsiteProfileCreateQueryResourceObject, type OnsiteProfileMeta, type OnsiteSubscriptionCreateQuery, type OnsiteSubscriptionCreateQueryResourceObject, type OpenAppEnum, type OpenForm, type OpenFormEnum, type OpenFormProperties, type OptInCode, type OptInCodeEnum, type OptInCodeProperties, type OptInCodeStyles, type OptInPromotionalEmailEnum, type OptInPromotionalSmsEnum, type Options, type OrderEnum, type OtherEnum, type Padding, type PageVisits, type PageVisitsEnum, type PageVisitsProperties, type PatchCampaignMessageResponse, type PatchCampaignResponse, type PatchCatalogCategoryResponse, type PatchCatalogItemResponse, type PatchCatalogVariantResponse, type PatchCouponCodeResponse, type PatchCouponResponse, type PatchCustomMetricResponse, type PatchFlowActionEncodedResponse, type PatchFlowResponse, type PatchImageResponse, type PatchListPartialUpdateResponse, type PatchMappedMetricResponse, type PatchProfileResponse, type PatchReviewResponseDto, type PatchSegmentPartialUpdateResponse, type PatchTagGroupResponse, type PatchTemplateResponse, type PatchTrackingSettingResponse, type PatchUniversalContentResponse, type PatchWebFeedResponse, type PatchWebhookResponse, type PendingEnum, type PhoneNumber, type PhoneNumberConsentChannelSettings, type PhoneNumberEnum, type PhoneNumberProperties, type PhoneNumberStyles, type PostBulkProfileSuppressionsCreateJobResponse, type PostBulkProfileSuppressionsRemoveJobResponse, type PostCampaignMessageResponse, type PostCampaignRecipientEstimationJobResponse, type PostCampaignResponse, type PostCampaignSendJobResponse, type PostCampaignValuesResponseDto, type PostCatalogCategoryCreateJobResponse, type PostCatalogCategoryDeleteJobResponse, type PostCatalogCategoryResponse, type PostCatalogCategoryUpdateJobResponse, type PostCatalogItemCreateJobResponse, type PostCatalogItemDeleteJobResponse, type PostCatalogItemResponse, type PostCatalogItemUpdateJobResponse, type PostCatalogVariantCreateJobResponse, type PostCatalogVariantDeleteJobResponse, type PostCatalogVariantResponse, type PostCatalogVariantUpdateJobResponse, type PostCouponCodeCreateJobResponse, type PostCouponCodeResponse, type PostCouponResponse, type PostCustomMetricResponse, type PostDataSourceResponse, type PostEncodedFormResponse, type PostFlowSeriesResponseDto, type PostFlowV2Response, type PostFlowValuesResponseDto, type PostFormSeriesResponseDto, type PostFormValuesResponseDto, type PostImageResponse, type PostListCreateResponse, type PostMetricAggregateResponse, type PostProfileImportJobResponse, type PostProfileMergeResponse, type PostProfileResponse, type PostSegmentCreateResponse, type PostSegmentSeriesResponseDto, type PostSegmentValuesResponseDto, type PostTagGroupResponse, type PostTagResponse, type PostTemplateResponse, type PostUniversalContentResponse, type PostWebFeedResponse, type PostWebhookResponse, type PredictiveAnalytics, type PreferencePageEnum, type PreferencePageFilter, type PreferencePageMethodFilter, type PreviouslySubmitted, type PreviouslySubmittedEnum, type PriceDropCondition, type PriceDropConditionConditionGroup, type PriceDropConditionFilter, type PriceDropEnum, type PriceDropPropertyEnum, type PriceDropTrigger, type PriorityEnum, type PrivateInformationEnum, type ProductBlock, type ProductEnum, type ProfanityOrInappropriateEnum, type ProfileBulkImportJobEnum, type ProfileCreateQuery, type ProfileCreateQueryResourceObject, type ProfileEnum, type ProfileEventTracked, type ProfileEventTrackedEnum, type ProfileEventTrackedProperties, type ProfileGroupMembershipEnum, type ProfileHasCustomObjectCondition, type ProfileHasCustomObjectEnum, type ProfileHasCustomObjectFilter, type ProfileHasGroupMembershipCondition, type ProfileHasNotReceivedEmailMessageCondition, type ProfileHasNotReceivedPushMessageCondition, type ProfileHasNotReceivedSmsMessageCondition, type ProfileIdentifierDtoResourceObject, type ProfileImportJobCreateQuery, type ProfileImportJobCreateQueryResourceObject, type ProfileImportJobResponseObjectResource, type ProfileLocation, type ProfileMarketingConsentCondition, type ProfileMarketingConsentEnum, type ProfileMergeEnum, type ProfileMergeQuery, type ProfileMergeQueryResourceObject, type ProfileMeta, type ProfileMetaPatchProperties, type ProfileMetricEnum, type ProfileMetricFunnelEnum, type ProfileMetricFunnelSteps, type ProfileMetricPropertyFilter, type ProfileModificationEnum, type ProfileModificationMethodFilter, type ProfileNoGroupMembershipCondition, type ProfileNotInFlowCondition, type ProfileNotInFlowEnum, type ProfileNotSentEmailEnum, type ProfileNotSentPushEnum, type ProfileNotSentSmsEnum, type ProfileOperationDelete, type ProfileOperationUpdateOrCreateBoolean, type ProfileOperationUpdateOrCreateDate, type ProfileOperationUpdateOrCreateList, type ProfileOperationUpdateOrCreateNumeric, type ProfileOperationUpdateOrCreateString, type ProfilePartialUpdateQuery, type ProfilePartialUpdateQueryResourceObject, type ProfilePermissionsCondition, type ProfilePermissionsEnum, type ProfilePostalCodeDistanceCondition, type ProfilePostalCodeDistanceEnum, type ProfilePredictiveAnalyticsChannelAffinityPriorityCondition, type ProfilePredictiveAnalyticsChannelAffinityPriorityFilter, type ProfilePredictiveAnalyticsChannelAffinityRankCondition, type ProfilePredictiveAnalyticsChannelAffinityRankFilter, type ProfilePredictiveAnalyticsDateCondition, type ProfilePredictiveAnalyticsEnum, type ProfilePredictiveAnalyticsNumericCondition, type ProfilePredictiveAnalyticsStringCondition, type ProfilePredictiveAnalyticsStringFilter, type ProfilePropertyCondition, type ProfilePropertyDateTrigger, type ProfilePropertyEnum, type ProfileRandomSampleCondition, type ProfileRegionCondition, type ProfileRegionEnum, type ProfileResponseObjectResource, type ProfileSampleEnum, type ProfileSubscriptionBulkCreateJobEnum, type ProfileSubscriptionBulkDeleteJobEnum, type ProfileSubscriptionCreateQueryResourceObject, type ProfileSubscriptionDeleteQueryResourceObject, type ProfileSuppressionBulkCreateJobEnum, type ProfileSuppressionBulkDeleteJobEnum, type ProfileSuppressionCreateQueryResourceObject, type ProfileSuppressionDeleteQueryResourceObject, type ProfileUpsertQuery, type ProfileUpsertQueryResourceObject, type ProfileUpsertQueryWithSubscriptionsResourceObject, type PromotionalSmsCheckboxEnum, type PromotionalSmsSubscription, type PromotionalSmsSubscriptionEnum, type Property, type PropertyOption, type ProvidedLandlineEnum, type ProvidedLandlineMethodFilter, type ProvidedNoAgeEnum, type ProvidedNoAgeMethodFilter, type PublishedEnum, type PushChannel, type PushEnum, type PushMarketing, type PushOnOpenApp, type PushOnOpenDeepLink, type PushProfileUpsertQueryResourceObject, type PushSendOptions, type PushTokenCreateQuery, type PushTokenCreateQueryResourceObject, type PushTokenEnum, type PushTokenResponseObjectResource, type PushTokenUnregisterEnum, type PushTokenUnregisterQuery, type PushTokenUnregisterQueryResourceObject, type QueryCampaignValuesData, type QueryCampaignValuesError, type QueryCampaignValuesErrors, type QueryCampaignValuesResponse, type QueryCampaignValuesResponses, type QueryFlowSeriesData, type QueryFlowSeriesError, type QueryFlowSeriesErrors, type QueryFlowSeriesResponse, type QueryFlowSeriesResponses, type QueryFlowValuesData, type QueryFlowValuesError, type QueryFlowValuesErrors, type QueryFlowValuesResponse, type QueryFlowValuesResponses, type QueryFormSeriesData, type QueryFormSeriesError, type QueryFormSeriesErrors, type QueryFormSeriesResponse, type QueryFormSeriesResponses, type QueryFormValuesData, type QueryFormValuesError, type QueryFormValuesErrors, type QueryFormValuesResponse, type QueryFormValuesResponses, type QueryMetricAggregatesData, type QueryMetricAggregatesError, type QueryMetricAggregatesErrors, type QueryMetricAggregatesResponse, type QueryMetricAggregatesResponses, type QuerySegmentSeriesData, type QuerySegmentSeriesError, type QuerySegmentSeriesErrors, type QuerySegmentSeriesResponse, type QuerySegmentSeriesResponses, type QuerySegmentValuesData, type QuerySegmentValuesError, type QuerySegmentValuesErrors, type QuerySegmentValuesResponse, type QuerySegmentValuesResponses, type QuoteStyle, type RadioButtons, type RadioButtonsEnum, type RadioButtonsProperties, type RadioButtonsStyles, type RankEnum, type RatingStyle, type RecordedDateEnum, type RecordedDateFilter, type Redirect, type RedirectEnum, type RedirectProperties, type ReentryCriteria, type RefreshCampaignRecipientEstimationData, type RefreshCampaignRecipientEstimationError, type RefreshCampaignRecipientEstimationErrors, type RefreshCampaignRecipientEstimationResponse, type RefreshCampaignRecipientEstimationResponses, type RejectReasonFake, type RejectReasonMisleading, type RejectReasonOther, type RejectReasonPrivateInformation, type RejectReasonProfanity, type RejectReasonUnrelated, type RejectedEnum, type RelationshipLinks, type RelativeAnniversaryDateFilter, type RelativeDateOperatorBaseRelativeDateFilter, type RelativeDateRangeFilter, type RemoveCategoriesFromCatalogItemData, type RemoveCategoriesFromCatalogItemError, type RemoveCategoriesFromCatalogItemErrors, type RemoveCategoriesFromCatalogItemResponse, type RemoveCategoriesFromCatalogItemResponses, type RemoveItemsFromCatalogCategoryData, type RemoveItemsFromCatalogCategoryError, type RemoveItemsFromCatalogCategoryErrors, type RemoveItemsFromCatalogCategoryResponse, type RemoveItemsFromCatalogCategoryResponses, type RemoveProfilesFromListData, type RemoveProfilesFromListError, type RemoveProfilesFromListErrors, type RemoveProfilesFromListResponse, type RemoveProfilesFromListResponses, type RemoveTagFromCampaignsData, type RemoveTagFromCampaignsError, type RemoveTagFromCampaignsErrors, type RemoveTagFromCampaignsResponse, type RemoveTagFromCampaignsResponses, type RemoveTagFromFlowsData, type RemoveTagFromFlowsError, type RemoveTagFromFlowsErrors, type RemoveTagFromFlowsResponse, type RemoveTagFromFlowsResponses, type RemoveTagFromListsData, type RemoveTagFromListsError, type RemoveTagFromListsErrors, type RemoveTagFromListsResponse, type RemoveTagFromListsResponses, type RemoveTagFromSegmentsData, type RemoveTagFromSegmentsError, type RemoveTagFromSegmentsErrors, type RemoveTagFromSegmentsResponse, type RemoveTagFromSegmentsResponses, type RenderOptions, type RenderOptionsSubObject, type RenderTemplateData, type RenderTemplateError, type RenderTemplateErrors, type RenderTemplateResponse, type RenderTemplateResponses, type RequestProfileDeletionData, type RequestProfileDeletionError, type RequestProfileDeletionErrors, type RequestProfileDeletionResponses, type ResendOptInCode, type ResendOptInCodeEnum, type Review, type ReviewBlock, type ReviewCreateDto, type ReviewCreateDtoResourceObject, type ReviewEnum, type ReviewPatchQuery, type ReviewPatchQueryResourceObject, type ReviewProductDto, type ReviewProductExternalId, type ReviewProperties, type ReviewPublicReply, type ReviewResponseDtoObjectResource, type ReviewStatusFeatured, type ReviewStatusPending, type ReviewStatusPublished, type ReviewStatusRejected, type ReviewStatusUnpublished, type ReviewStyles, type ReviewValueReportGrouping, type ReviewValuesReportEnum, type ReviewValuesReportResponseObjectResource, type ReviewerNameStyle, type RichTextMargin, type RichTextStyle, type RichTextStyles, type Row, type ScheduleReportBuilderReportEnum, type ScheduleReportEnum, type Scroll, type ScrollPercentageEnum, type ScrollProperties, type Section, type SectionEnum, type SegmentCreateQuery, type SegmentCreateQueryResourceObject, type SegmentDefinition, type SegmentEnum, type SegmentListResponseObjectResource, type SegmentMemberResponseObjectResource, type SegmentPartialUpdateQuery, type SegmentPartialUpdateQueryResourceObject, type SegmentResponseObjectResource, type SegmentRetrieveResponseObjectResource, type SegmentSeriesReportEnum, type SegmentSeriesRequestDto, type SegmentSeriesRequestDtoResourceObject, type SegmentTrigger, type SegmentValuesReportEnum, type SegmentValuesRequestDto, type SegmentValuesRequestDtoResourceObject, type SegmentsProfileMetricCondition, type SegmentsProfileMetricFunnelCondition, type SendCampaignData, type SendCampaignError, type SendCampaignErrors, type SendCampaignResponse, type SendCampaignResponses, type SendEmailAction, type SendEmailActionData, type SendEmailEnum, type SendInternalAlertAction, type SendInternalAlertActionData, type SendInternalAlertEnum, type SendMobilePushEnum, type SendPushNotificationAction, type SendPushNotificationActionContentExperimentActionData, type SendPushNotificationActionCurrentExperiment, type SendPushNotificationActionData, type SendSmsAction, type SendSmsActionData, type SendSmsEnum, type SendTime, type SendTimeSubObject, type SendWebhookAction, type SendWebhookActionData, type SendWebhookEnum, type SendWhatsAppAction, type SendWhatsAppActionData, type SendWhatsappEnum, type SeriesData, type ServerBisSubscriptionCreateQuery, type ServerBisSubscriptionCreateQueryResourceObject, type SetCountEnum, type SetPropertyEnum, type SftpEnum, type SftpMethodFilter, type ShopifyEnum, type ShopifyIntegrationFilter, type ShopifyIntegrationMethodFilter, type SideImageSettings, type SignupCounter, type SignupCounterEnum, type SignupCounterProperties, type SignupCounterStyles, type SilentEnum, type SinceFlowStartDateFilter, type SkipToSuccess, type SkipToSuccessEnum, type SkipToSuccessProperties, type SmartSendTimeEnum, type SmartSendTimeStrategy, type SmsChannel, type SmsConsentCheckbox, type SmsConsentCheckboxProperties, type SmsConsentCheckboxStyles, type SmsContent, type SmsContentCreate, type SmsContentSubObject, type SmsDisclosure, type SmsDisclosureAccountDefault, type SmsDisclosureCustom, type SmsDisclosureEnum, type SmsDisclosureProperties, type SmsDisclosureStyles, type SmsDisclosureTextStyle, type SmsEnum, type SmsMarketing, type SmsMessageDefinition, type SmsMessageDefinitionCreate, type SmsSendOptions, type SmsSubscriptionParameters, type SmsTransactional, type SmsUnsubscriptionParameters, type SocialBlock, type SocialEnum, type SpacerBlock, type SpacerEnum, type SpamComplaintEnum, type SpamComplaintMethodFilter, type SpinToWin, type SpinToWinEnum, type SpinToWinProperties, type SpinToWinSliceConfig, type SpinToWinSliceStyle, type SpinToWinStyles, type SplitBlock, type SplitEnum, type StandardEnum, type StaticCount, type StaticCouponConfig, type StaticDateFilter, type StaticDateRangeFilter, type StaticEnum, type StaticSendStrategy, type StaticTrackingParam, type StatisticsDto, type StatusDateEnum, type StatusDateFilter, type Step, type StreetAddress, type StringArrayOperatorStringArrayFilter, type StringEnum, type StringInArrayFilter, type StringOperatorStringFilter, type StringPhoneOperatorStringArrayFilter, type SubmitBackInStock, type SubmitBackInStockEnum, type SubmitBackInStockProperties, type SubmitOptInCode, type SubmitOptInCodeEnum, type SubscribeMethodEnum, type SubscribeViaSms, type SubscribeViaSmsEnum, type SubscribeViaSmsProperties, type SubscribeViaWhatsApp, type SubscribeViaWhatsAppProperties, type SubscribeViaWhatsappEnum, type SubscribedEnum, type SubscribedSmsisRcsCapableFilter, type SubscriptionChannels, type SubscriptionCreateJobCreateQuery, type SubscriptionCreateJobCreateQueryResourceObject, type SubscriptionDeleteJobCreateQuery, type SubscriptionDeleteJobCreateQueryResourceObject, type SubscriptionEnum, type SubscriptionParameters, type Subscriptions, type SuppressionCreateJobCreateQuery, type SuppressionCreateJobCreateQueryResourceObject, type SuppressionDeleteJobCreateQuery, type SuppressionDeleteJobCreateQueryResourceObject, type TableBlock, type TableEnum, type TagCampaignOp, type TagCampaignsData, type TagCampaignsError, type TagCampaignsErrors, type TagCampaignsResponse, type TagCampaignsResponses, type TagCreateQuery, type TagCreateQueryResourceObject, type TagEnum, type TagFlowOp, type TagFlowsData, type TagFlowsError, type TagFlowsErrors, type TagFlowsResponse, type TagFlowsResponses, type TagGroupCreateQuery, type TagGroupCreateQueryResourceObject, type TagGroupEnum, type TagGroupResponseObjectResource, type TagGroupUpdateQuery, type TagGroupUpdateQueryResourceObject, type TagListOp, type TagListsData, type TagListsError, type TagListsErrors, type TagListsResponse, type TagListsResponses, type TagResponseObjectResource, type TagSegmentOp, type TagSegmentsData, type TagSegmentsError, type TagSegmentsErrors, type TagSegmentsResponse, type TagSegmentsResponses, type TagUpdateQuery, type TagUpdateQueryResourceObject, type TargetDateAction, type TargetDateActionData, type TargetDateEnum, type Teaser, type TeaserStyles, type TemplateCloneQuery, type TemplateCloneQueryResourceObject, type TemplateCreateQuery, type TemplateCreateQueryResourceObject, type TemplateEnum, type TemplateRenderQuery, type TemplateRenderQueryResourceObject, type TemplateResponseObjectResource, type TemplateUniversalContentEnum, type TemplateUpdateQuery, type TemplateUpdateQueryResourceObject, type Text, type TextBlock, type TextBlockData, type TextBlockStyles, type TextEnum, type TextProperties, type TextStyle, type TextStyles, type ThrottledEnum, type ThrottledSendStrategy, type TimeDelayAction, type TimeDelayActionData, type TimeDelayEnum, type Timeframe, type TrackEventEnum, type TrackingParamDto, type TrackingSettingEnum, type TrackingSettingPartialUpdateQuery, type TrackingSettingPartialUpdateQueryResourceObject, type TrackingSettingResponseObjectResource, type TriggerBaseProperties, type TriggerBranchAction, type TriggerBranchActionData, type TriggerSplitEnum, type UnderlineEnum, type UnidentifiedProfiles, type UnidentifiedProfilesEnum, type UniqueCouponConfig, type UniqueEnum, type UniversalContentCreateQuery, type UniversalContentCreateQueryResourceObject, type UniversalContentPartialUpdateQuery, type UniversalContentPartialUpdateQueryResourceObject, type UniversalContentResponseObjectResource, type UnknownEnum, type UnpublishedEnum, type UnregisterClientPushTokenData, type UnregisterClientPushTokenError, type UnregisterClientPushTokenErrors, type UnregisterClientPushTokenResponses, type UnrelatedEnum, type UnsubscribedEnum, type UnsubscriptionChannels, type UnsubscriptionParameters, type UnsupportedBlock, type UnsupportedEnum, type UnsupportedSendStrategy, type UpdateCampaignData, type UpdateCampaignError, type UpdateCampaignErrors, type UpdateCampaignMessageData, type UpdateCampaignMessageError, type UpdateCampaignMessageErrors, type UpdateCampaignMessageResponse, type UpdateCampaignMessageResponses, type UpdateCampaignResponse, type UpdateCampaignResponses, type UpdateCatalogCategoryData, type UpdateCatalogCategoryError, type UpdateCatalogCategoryErrors, type UpdateCatalogCategoryResponse, type UpdateCatalogCategoryResponses, type UpdateCatalogItemData, type UpdateCatalogItemError, type UpdateCatalogItemErrors, type UpdateCatalogItemResponse, type UpdateCatalogItemResponses, type UpdateCatalogVariantData, type UpdateCatalogVariantError, type UpdateCatalogVariantErrors, type UpdateCatalogVariantResponse, type UpdateCatalogVariantResponses, type UpdateCategoriesForCatalogItemData, type UpdateCategoriesForCatalogItemError, type UpdateCategoriesForCatalogItemErrors, type UpdateCategoriesForCatalogItemResponse, type UpdateCategoriesForCatalogItemResponses, type UpdateCouponCodeData, type UpdateCouponCodeError, type UpdateCouponCodeErrors, type UpdateCouponCodeResponse, type UpdateCouponCodeResponses, type UpdateCouponData, type UpdateCouponError, type UpdateCouponErrors, type UpdateCouponResponse, type UpdateCouponResponses, type UpdateCustomMetricData, type UpdateCustomMetricError, type UpdateCustomMetricErrors, type UpdateCustomMetricResponse, type UpdateCustomMetricResponses, type UpdateFlowActionData, type UpdateFlowActionError, type UpdateFlowActionErrors, type UpdateFlowActionResponse, type UpdateFlowActionResponses, type UpdateFlowData, type UpdateFlowError, type UpdateFlowErrors, type UpdateFlowResponse, type UpdateFlowResponses, type UpdateImageData, type UpdateImageError, type UpdateImageErrors, type UpdateImageForCampaignMessageData, type UpdateImageForCampaignMessageError, type UpdateImageForCampaignMessageErrors, type UpdateImageForCampaignMessageResponse, type UpdateImageForCampaignMessageResponses, type UpdateImageResponse, type UpdateImageResponses, type UpdateItemsForCatalogCategoryData, type UpdateItemsForCatalogCategoryError, type UpdateItemsForCatalogCategoryErrors, type UpdateItemsForCatalogCategoryResponse, type UpdateItemsForCatalogCategoryResponses, type UpdateListData, type UpdateListError, type UpdateListErrors, type UpdateListResponse, type UpdateListResponses, type UpdateMappedMetricData, type UpdateMappedMetricError, type UpdateMappedMetricErrors, type UpdateMappedMetricResponse, type UpdateMappedMetricResponses, type UpdateProfileAction, type UpdateProfileActionData, type UpdateProfileData, type UpdateProfileEnum, type UpdateProfileError, type UpdateProfileErrors, type UpdateProfileResponse, type UpdateProfileResponses, type UpdateReviewData, type UpdateReviewError, type UpdateReviewErrors, type UpdateReviewResponse, type UpdateReviewResponses, type UpdateSegmentData, type UpdateSegmentError, type UpdateSegmentErrors, type UpdateSegmentResponse, type UpdateSegmentResponses, type UpdateTagData, type UpdateTagError, type UpdateTagErrors, type UpdateTagGroupData, type UpdateTagGroupError, type UpdateTagGroupErrors, type UpdateTagGroupResponse, type UpdateTagGroupResponses, type UpdateTagResponse, type UpdateTagResponses, type UpdateTemplateData, type UpdateTemplateError, type UpdateTemplateErrors, type UpdateTemplateResponse, type UpdateTemplateResponses, type UpdateTrackingSettingData, type UpdateTrackingSettingError, type UpdateTrackingSettingErrors, type UpdateTrackingSettingResponse, type UpdateTrackingSettingResponses, type UpdateUniversalContentData, type UpdateUniversalContentError, type UpdateUniversalContentErrors, type UpdateUniversalContentResponse, type UpdateUniversalContentResponses, type UpdateWebFeedData, type UpdateWebFeedError, type UpdateWebFeedErrors, type UpdateWebFeedResponse, type UpdateWebFeedResponses, type UpdateWebhookData, type UpdateWebhookError, type UpdateWebhookErrors, type UpdateWebhookResponse, type UpdateWebhookResponses, type UploadImageFromFileData, type UploadImageFromFileError, type UploadImageFromFileErrors, type UploadImageFromFileResponse, type UploadImageFromFileResponses, type UploadImageFromUrlData, type UploadImageFromUrlError, type UploadImageFromUrlErrors, type UploadImageFromUrlResponse, type UploadImageFromUrlResponses, type UrlPatterns, type UrlPatternsEnum, type UrlPatternsProperties, type UtmParam, type ValuesData, type VariableEnum, type VariableTimerConfiguration, type Version, type VersionProperties, type VersionStyles, type VideoBlock, type VideoEnum, type WebFeedCreateQuery, type WebFeedCreateQueryResourceObject, type WebFeedEnum, type WebFeedPartialUpdateQuery, type WebFeedPartialUpdateQueryResourceObject, type WebFeedResponseObjectResource, type WebhookCreateQuery, type WebhookCreateQueryResourceObject, type WebhookEnum, type WebhookPartialUpdateQuery, type WebhookPartialUpdateQueryResourceObject, type WebhookResponseObjectResource, type WebhookTopicEnum, type WebhookTopicResponseObjectResource, type WhatsAppSubscriptionParameters, type WhatsAppUnsubscriptionParameters, type WhatsappChannel, type WhatsappConversationalChannel, type WhatsappMarketingChannel, type WhatsappTransactionalChannel, addCategoriesToCatalogItem, addItemsToCatalogCategory, addProfilesToList, assignTemplateToCampaignMessage, bulkCreateCatalogCategories, bulkCreateCatalogItems, bulkCreateCatalogVariants, bulkCreateClientEvents, bulkCreateCouponCodes, bulkCreateDataSourceRecords, bulkCreateEvents, bulkDeleteCatalogCategories, bulkDeleteCatalogItems, bulkDeleteCatalogVariants, bulkImportProfiles, bulkSubscribeProfiles, bulkSuppressProfiles, bulkUnsubscribeProfiles, bulkUnsuppressProfiles, bulkUpdateCatalogCategories, bulkUpdateCatalogItems, bulkUpdateCatalogVariants, cancelCampaignSend, cloneTemplate, createBackInStockSubscription, createCampaign, createCampaignClone, createCatalogCategory, createCatalogItem, createCatalogVariant, createClientBackInStockSubscription, createClientEvent, createClientProfile, createClientPushToken, createClientReview, createClientSubscription, createCoupon, createCouponCode, createCustomMetric, createDataSource, createDataSourceRecord, createEvent, createFlow, createForm, createList, createOrUpdateProfile, createProfile, createPushToken, createSegment, createTag, createTagGroup, createTemplate, createUniversalContent, createWebFeed, createWebhook, deleteCampaign, deleteCatalogCategory, deleteCatalogItem, deleteCatalogVariant, deleteCoupon, deleteCouponCode, deleteCustomMetric, deleteDataSource, deleteFlow, deleteForm, deleteList, deletePushToken, deleteSegment, deleteTag, deleteTagGroup, deleteTemplate, deleteUniversalContent, deleteWebFeed, deleteWebhook, getAccount, getAccounts, getActionForFlowMessage, getActionIdForFlowMessage, getActionIdsForFlow, getActionsForFlow, getAllUniversalContent, getBulkCreateCatalogItemsJob, getBulkCreateCatalogItemsJobs, getBulkCreateCategoriesJob, getBulkCreateCategoriesJobs, getBulkCreateCouponCodeJobs, getBulkCreateCouponCodesJob, getBulkCreateVariantsJob, getBulkCreateVariantsJobs, getBulkDeleteCatalogItemsJob, getBulkDeleteCatalogItemsJobs, getBulkDeleteCategoriesJob, getBulkDeleteCategoriesJobs, getBulkDeleteVariantsJob, getBulkDeleteVariantsJobs, getBulkImportProfilesJob, getBulkImportProfilesJobs, getBulkSuppressProfilesJob, getBulkSuppressProfilesJobs, getBulkUnsuppressProfilesJob, getBulkUnsuppressProfilesJobs, getBulkUpdateCatalogItemsJob, getBulkUpdateCatalogItemsJobs, getBulkUpdateCategoriesJob, getBulkUpdateCategoriesJobs, getBulkUpdateVariantsJob, getBulkUpdateVariantsJobs, getCampaign, getCampaignForCampaignMessage, getCampaignIdForCampaignMessage, getCampaignIdsForTag, getCampaignMessage, getCampaignRecipientEstimation, getCampaignRecipientEstimationJob, getCampaignSendJob, getCampaigns, getCatalogCategories, getCatalogCategory, getCatalogItem, getCatalogItems, getCatalogVariant, getCatalogVariants, getCategoriesForCatalogItem, getCategoryIdsForCatalogItem, getClientReviewValuesReports, getClientReviews, getCoupon, getCouponCode, getCouponCodeIdsForCoupon, getCouponCodes, getCouponCodesForCoupon, getCouponForCouponCode, getCouponIdForCouponCode, getCoupons, getCustomMetric, getCustomMetricForMappedMetric, getCustomMetricIdForMappedMetric, getCustomMetrics, getDataSource, getDataSources, getErrorsForBulkImportProfilesJob, getEvent, getEvents, getFlow, getFlowAction, getFlowActionMessages, getFlowForFlowAction, getFlowIdForFlowAction, getFlowIdsForTag, getFlowMessage, getFlows, getFlowsTriggeredByList, getFlowsTriggeredByMetric, getFlowsTriggeredBySegment, getForm, getFormForFormVersion, getFormIdForFormVersion, getFormVersion, getForms, getIdsForFlowsTriggeredByList, getIdsForFlowsTriggeredByMetric, getIdsForFlowsTriggeredBySegment, getImage, getImageForCampaignMessage, getImageIdForCampaignMessage, getImages, getItemIdsForCatalogCategory, getItemsForCatalogCategory, getList, getListForBulkImportProfilesJob, getListIdsForBulkImportProfilesJob, getListIdsForProfile, getListIdsForTag, getLists, getListsForProfile, getMappedMetric, getMappedMetrics, getMessageIdsForCampaign, getMessageIdsForFlowAction, getMessagesForCampaign, getMetric, getMetricForEvent, getMetricForMappedMetric, getMetricForMetricProperty, getMetricIdForEvent, getMetricIdForMappedMetric, getMetricIdForMetricProperty, getMetricIdsForCustomMetric, getMetricProperty, getMetrics, getMetricsForCustomMetric, getProfile, getProfileForEvent, getProfileForPushToken, getProfileIdForEvent, getProfileIdForPushToken, getProfileIdsForBulkImportProfilesJob, getProfileIdsForList, getProfileIdsForSegment, getProfiles, getProfilesForBulkImportProfilesJob, getProfilesForList, getProfilesForSegment, getPropertiesForMetric, getPropertyIdsForMetric, getPushToken, getPushTokenIdsForProfile, getPushTokens, getPushTokensForProfile, getReview, getReviews, getSegment, getSegmentIdsForProfile, getSegmentIdsForTag, getSegments, getSegmentsForProfile, getTag, getTagGroup, getTagGroupForTag, getTagGroupIdForTag, getTagGroups, getTagIdsForCampaign, getTagIdsForFlow, getTagIdsForList, getTagIdsForSegment, getTagIdsForTagGroup, getTags, getTagsForCampaign, getTagsForFlow, getTagsForList, getTagsForSegment, getTagsForTagGroup, getTemplate, getTemplateForCampaignMessage, getTemplateForFlowMessage, getTemplateIdForCampaignMessage, getTemplateIdForFlowMessage, getTemplates, getTrackingSetting, getTrackingSettings, getUniversalContent, getVariantIdsForCatalogItem, getVariantsForCatalogItem, getVersionIdsForForm, getVersionsForForm, getWebFeed, getWebFeeds, getWebhook, getWebhookTopic, getWebhookTopics, getWebhooks, mergeProfiles, queryCampaignValues, queryFlowSeries, queryFlowValues, queryFormSeries, queryFormValues, queryMetricAggregates, querySegmentSeries, querySegmentValues, refreshCampaignRecipientEstimation, removeCategoriesFromCatalogItem, removeItemsFromCatalogCategory, removeProfilesFromList, removeTagFromCampaigns, removeTagFromFlows, removeTagFromLists, removeTagFromSegments, renderTemplate, requestProfileDeletion, sendCampaign, tagCampaigns, tagFlows, tagLists, tagSegments, unregisterClientPushToken, updateCampaign, updateCampaignMessage, updateCatalogCategory, updateCatalogItem, updateCatalogVariant, updateCategoriesForCatalogItem, updateCoupon, updateCouponCode, updateCustomMetric, updateFlow, updateFlowAction, updateImage, updateImageForCampaignMessage, updateItemsForCatalogCategory, updateList, updateMappedMetric, updateProfile, updateReview, updateSegment, updateTag, updateTagGroup, updateTemplate, updateTrackingSetting, updateUniversalContent, updateWebFeed, updateWebhook, uploadImageFromFile, uploadImageFromUrl };
