/**
 * Shared the cart with one or more friends
 */
export interface CartShared {
    /**
     * Shopping cart ID
     */
    cart_id?: string;
    /**
     * Products displayed in the product list
     */
    products?: CartSharedProduct[];
    /**
     * Recipient of the sharing
     */
    recipient?: string;
    /**
     * Message that the sender sent
     */
    share_message?: string;
    /**
     * Method of sharing
     */
    share_via?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface CartSharedProduct {
    /**
     * Name of the product
     */
    name: string;
    /**
     * Product ID displayed on the list
     */
    product_id: string;
    [property: string]: any;
}
/**
 * User viewed their shopping cart
 */
export interface CartViewed {
    /**
     * Shopping cart ID
     */
    cart_id?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Products in the order
     */
    products: CartViewedProduct[];
    /**
     * Revenue ($) with discounts and coupons added in
     */
    value?: number;
    [property: string]: any;
}
/**
 * The product
 */
export interface CartViewedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User abandoned the checkout process
 */
export interface CheckoutAbandoned {
    /**
     * Store or affiliation from which this transaction occurred (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Checkout provider (for example, "stripe")
     */
    checkout_type?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Total discount associated with the transaction
     */
    discount?: number;
    /**
     * URL to return to the cart if a cart recovery promotion is available
     */
    discounted_order_cart_url?: string;
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * URL to return to the cart
     */
    order_cart_url?: string;
    /**
     * Order/transaction ID
     */
    order_id?: string;
    /**
     * Order number (for example, "CHORD-000111222")
     */
    order_name?: string;
    /**
     * Phone number associated with the order
     */
    phone?: string;
    products?: CheckoutAbandonedProduct[];
    /**
     * Revenue ($) associated with the transaction (excluding shipping and tax)
     */
    revenue?: number;
    /**
     * Shipping cost associated with the transaction
     */
    shipping?: number;
    /**
     * Total tax associated with the transaction
     */
    tax?: number;
    /**
     * Revenue ($) with discounts and coupons added in
     */
    value?: number;
    [property: string]: any;
}
/**
 * The product
 */
export interface CheckoutAbandonedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Products in the order
 */
export interface CheckoutStarted {
    /**
     * Store or affiliation from which this transaction occurred (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Checkout provider (for example, "stripe")
     */
    checkout_type?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Total discount associated with the transaction
     */
    discount?: number;
    /**
     * Order/transaction ID
     */
    order_id?: string;
    /**
     * Order number (for example, "CHORD-000111222")
     */
    order_name?: string;
    /**
     * Products in the order
     */
    products: CheckoutStartedProduct[];
    /**
     * Revenue ($) associated with the transaction (excluding shipping and tax)
     */
    revenue?: number;
    /**
     * Shipping cost associated with the transaction
     */
    shipping?: number;
    /**
     * Total tax associated with the transaction
     */
    tax?: number;
    /**
     * Revenue ($) with discounts and coupons added in
     */
    value?: number;
    [property: string]: any;
}
/**
 * The product
 */
export interface CheckoutStartedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User completed a checkout step
 */
export interface CheckoutStepCompleted {
    /**
     * Checkout transaction ID
     */
    checkout_id?: string;
    /**
     * String representing the payment method chosen
     */
    payment_method?: string;
    /**
     * String representing the shipping the method chosen
     */
    shipping_method?: string;
    /**
     * Number representing a step in the checkout process
     */
    step: number;
    [property: string]: any;
}
/**
 * User viewed a checkout step
 */
export interface CheckoutStepViewed {
    /**
     * Checkout transaction ID
     */
    checkout_id?: string;
    /**
     * String representing the payment method chosen
     */
    payment_method?: string;
    /**
     * String representing the shipping the method chosen
     */
    shipping_method?: string;
    /**
     * Number representing a step in the checkout process
     */
    step: number;
    [property: string]: any;
}
/**
 * User clicked on a collection
 */
export interface CollectionClicked {
    /**
     * Brand of the collection
     */
    brand?: string;
    /**
     * Database ID of the collection
     */
    collection_id?: string;
    /**
     * Short description of the collection
     */
    description?: string;
    /**
     * Image URL of the collection
     */
    image_url?: string;
    /**
     * Slug of the collection, often used in URLs (for example, "spring-collection")
     */
    slug?: string;
    /**
     * Title of the collection
     */
    title?: string;
    /**
     * URL of the collection page for the collection
     */
    url?: string;
    [property: string]: any;
}
/**
 * Coupon was applied on a user's shopping cart or order
 */
export interface CouponApplied {
    /**
     * Cart ID, if applicable
     */
    cart_id?: string;
    /**
     * Coupon ID
     */
    coupon_id?: string;
    /**
     * Coupon name
     */
    coupon_name?: string;
    /**
     * Monetary discount applied through the coupon
     */
    discount?: number;
    /**
     * Order/transaction ID, if applicable
     */
    order_id?: string;
    [property: string]: any;
}
/**
 * Coupon was denied from a user's shopping cart or order
 */
export interface CouponDenied {
    /**
     * Cart ID, if applicable
     */
    cart_id?: string;
    /**
     * Coupon ID
     */
    coupon_id?: string;
    /**
     * Coupon name
     */
    coupon_name?: string;
    /**
     * Order/transaction ID, if applicable
     */
    order_id?: string;
    /**
     * Reason the coupon was denied
     */
    reason?: string;
    [property: string]: any;
}
/**
 * User entered a coupon on a shopping cart or order
 */
export interface CouponEntered {
    /**
     * Cart ID, if applicable
     */
    cart_id?: string;
    /**
     * Coupon ID
     */
    coupon_id?: string;
    /**
     * Coupon name
     */
    coupon_name?: string;
    /**
     * Order/transaction ID, if applicable
     */
    order_id?: string;
    [property: string]: any;
}
/**
 * User removed a coupon from a cart or order
 */
export interface CouponRemoved {
    /**
     * Cart ID, if applicable
     */
    cart_id?: string;
    /**
     * Coupon ID
     */
    coupon_id?: string;
    /**
     * Coupon name
     */
    coupon_name?: string;
    /**
     * Monetary discount applied through the coupon
     */
    discount?: number;
    /**
     * Order/transaction ID, if applicable
     */
    order_id?: string;
    [property: string]: any;
}
/**
 * Email entered in a form on the website
 */
export interface EmailCaptured {
    /**
     * Email address added to the form
     */
    email?: string;
    /**
     * HTML component within the UX (for example, "footer")
     */
    placement_component?: string;
    /**
     * Page of website (or "sitewide" for whole website)
     */
    placement_page?: string;
    [property: string]: any;
}
/**
 * Gift card was applied on a user's shopping cart or order
 */
export interface GiftCardApplied {
    /**
     * Database ID of the gift card
     */
    gift_card_id?: string;
    /**
     * Last characters of the gift card
     */
    gift_card_last_characters?: string;
    [property: string]: any;
}
/**
 * Gift card was denied from a user's shopping cart or order
 */
export interface GiftCardDenied {
    /**
     * Database ID of the gift card
     */
    gift_card_last_characters?: string;
    /**
     * Reason the gift card was denied
     */
    reason?: string;
    [property: string]: any;
}
/**
 * User entered a gift card on a cart or order
 */
export interface GiftCardEntered {
    /**
     * Database ID of the gift card
     */
    gift_card_last_characters?: string;
    [property: string]: any;
}
/**
 * User removed a gift card from a cart or order
 */
export interface GiftCardRemoved {
    /**
     * Database ID of the gift card
     */
    gift_card_id?: string;
    /**
     * Last characters of the gift card
     */
    gift_card_last_characters?: string;
    [property: string]: any;
}
/**
 * Notify waitlist that product variant is back in stock
 */
export interface ItemRestocked {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Whether the variant can be backordered
     */
    backorderable?: boolean;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Email address to notify when the product is back in stock
     */
    email?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * ID of waitlist signup
     */
    stock_request_id?: string;
    /**
     * Quantity of the variant currently available (for example, 5000)
     */
    total_on_hand?: number;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Database ID of the product variant
     */
    variant_id?: string;
    [property: string]: any;
}
/**
 * User submits the login form
 */
export interface LoginStarted {
    /**
     * The email of the user
     */
    email?: string;
    [property: string]: any;
}
/**
 * User clicked on a navigation link
 */
export interface NavigationClicked {
    /**
     * Name of menu or category where navigation link was clicked (for example, "Support")
     */
    category?: string;
    /**
     * Navigation label clicked (for example, "Contact")
     */
    label?: string;
    /**
     * Navigation HTML component within the UX (for example, "footer")
     */
    navigation_placement?: string;
    /**
     * Navigation label clicked (for example, "Contact")
     */
    navigation_title?: string;
    /**
     * URL of navigation link destination
     */
    navigation_url?: string;
    [property: string]: any;
}
/**
 * User cancelled the order
 */
export interface OrderCancelled {
    /**
     * Store or affiliation from which this transaction occurred (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Order metadata "campaign_id"
     */
    campaign_id?: number;
    /**
     * Channel where order was placed (for example, "chord")
     */
    channel?: string;
    /**
     * Checkout provider (for example, "stripe")
     */
    checkout_type?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Total discount associated with the transaction
     */
    discount?: number;
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * First name in the shipping address for the order
     */
    first_name?: string;
    /**
     * Order contains a subscription
     */
    has_subscription?: boolean;
    /**
     * Order contains a subscription
     */
    is_recurring?: boolean;
    /**
     * Last name in the shipping address for the order
     */
    last_name?: string;
    /**
     * Metadata of the order
     */
    metadata?: {
        [key: string]: any;
    };
    /**
     * Date and time order was placed
     */
    order_date?: string;
    /**
     * Order/transaction ID
     */
    order_id: string;
    /**
     * Phone number associated with the order
     */
    phone?: string;
    /**
     * Products in the order
     */
    products: OrderCancelledProduct[];
    /**
     * URL for customer to share to receive referral credit
     */
    purl_link?: string;
    /**
     * ID for referral that customer used to place the order
     */
    referral_identifier_id?: string;
    /**
     * Revenue ($) associated with the transaction (excluding shipping and tax)
     */
    revenue: number;
    /**
     * Shipping cost associated with the transaction
     */
    shipping?: number;
    /**
     * City in the shipping address for the order
     */
    shipping_city?: string;
    /**
     * Country in the shipping address for the order
     */
    shipping_country?: string;
    shipping_method_details?: OrderCancelledShippingMethodDetails;
    /**
     * State in the shipping address for the order
     */
    shipping_state?: string;
    /**
     * Zipcode in the shipping address for the order
     */
    shipping_zipcode?: string;
    /**
     * Total tax associated with the transaction
     */
    tax?: number;
    /**
     * Order metadata "template_id"
     */
    template_id?: number;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    total: number;
    /**
     * Tracking IDs for third party integrations
     */
    tracking_ids?: {
        [key: string]: any;
    };
    [property: string]: any;
}
/**
 * The product
 */
export interface OrderCancelledProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Number of SKUs in the bundle
     */
    bundle_size?: number;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Quantity sold via cross-selling
     */
    cross_sold_quantity?: number;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity: number;
    /**
     * SKU of the product variant
     */
    sku: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Metadata of the product variant
     */
    variant_metadata?: {
        [key: string]: any;
    };
    [property: string]: any;
}
export interface OrderCancelledShippingMethodDetails {
    /**
     * Code of shipping method chosen for the order (for example, "standard_shipping")
     */
    shipping_code?: string;
    /**
     * Name of shipping method chosen for the order (for example, "Standard Shipping")
     */
    shipping_method?: string;
    [property: string]: any;
}
/**
 * User completed the order
 */
export interface OrderCompleted {
    /**
     * Store or affiliation from which this transaction occurred (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Order metadata "campaign_id"
     */
    campaign_id?: number;
    /**
     * Order category
     */
    category?: string;
    /**
     * Channel where order was placed (for example, "chord")
     */
    channel?: string;
    /**
     * Checkout ID
     */
    checkout_id?: string;
    /**
     * Checkout provider (for example, "stripe")
     */
    checkout_type?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency: string;
    /**
     * Total discount associated with the transaction
     */
    discount?: number;
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * First name in the shipping address for the order
     */
    first_name?: string;
    /**
     * Order contains a subscription
     */
    has_subscription?: boolean;
    /**
     * Order contains a subscription
     */
    is_recurring?: boolean;
    /**
     * Last name in the shipping address for the order
     */
    last_name?: string;
    /**
     * Metadata of the order
     */
    metadata?: {
        [key: string]: any;
    };
    /**
     * Date and time order was placed
     */
    order_date: string;
    /**
     * Order/transaction ID
     */
    order_id: string;
    /**
     * Phone number associated with the order
     */
    phone?: string;
    /**
     * Products in the order
     */
    products: OrderCompletedProduct[];
    /**
     * URL for customer to share to receive referral credit
     */
    purl_link?: string;
    /**
     * ID for referral that customer used to place the order
     */
    referral_identifier_id?: string;
    /**
     * Indicates whether the customer is new or returning
     */
    repeat?: boolean;
    /**
     * Revenue ($) associated with the transaction (excluding shipping and tax)
     */
    revenue: number;
    /**
     * Shipping cost associated with the transaction
     */
    shipping?: number;
    /**
     * City in the shipping address for the order
     */
    shipping_city?: string;
    /**
     * Country in the shipping address for the order
     */
    shipping_country?: string;
    shipping_method_details?: OrderCompletedShippingMethodDetails;
    /**
     * State in the shipping address for the order
     */
    shipping_state?: string;
    /**
     * Zipcode in the shipping address for the order
     */
    shipping_zipcode?: string;
    /**
     * Order total after discounts but before taxes and shipping
     */
    subtotal?: number;
    /**
     * Total tax associated with the transaction
     */
    tax?: number;
    /**
     * Order metadata "template_id"
     */
    template_id?: number;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    total: number;
    /**
     * Tracking IDs for third party integrations
     */
    tracking_ids?: {
        [key: string]: any;
    };
    [property: string]: any;
}
/**
 * The product
 */
export interface OrderCompletedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Number of SKUs in the bundle
     */
    bundle_size?: number;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Quantity sold via cross-selling
     */
    cross_sold_quantity?: number;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity: number;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    revenue: number;
    /**
     * SKU of the product variant
     */
    sku: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Metadata of the product variant
     */
    variant_metadata?: {
        [key: string]: any;
    };
    [property: string]: any;
}
export interface OrderCompletedShippingMethodDetails {
    /**
     * Code of shipping method chosen for the order (for example, "standard_shipping")
     */
    shipping_code?: string;
    /**
     * Name of shipping method chosen for the order (for example, "Standard Shipping")
     */
    shipping_method?: string;
    [property: string]: any;
}
/**
 * User refunded the order
 */
export interface OrderRefunded {
    /**
     * Store or affiliation from which this transaction occurred (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Order metadata "campaign_id"
     */
    campaign_id?: number;
    /**
     * Channel where order was placed (for example, "chord")
     */
    channel?: string;
    /**
     * Checkout provider (for example, "stripe")
     */
    checkout_type?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Total discount associated with the transaction
     */
    discount?: number;
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * First name in the shipping address for the order
     */
    first_name?: string;
    /**
     * Order contains a subscription
     */
    has_subscription?: boolean;
    /**
     * Order contains a subscription
     */
    is_recurring?: boolean;
    /**
     * Last name in the shipping address for the order
     */
    last_name?: string;
    /**
     * Metadata of the order
     */
    metadata?: {
        [key: string]: any;
    };
    /**
     * Date and time order was placed
     */
    order_date?: string;
    /**
     * Order/transaction ID
     */
    order_id: string;
    /**
     * Phone number associated with the order
     */
    phone?: string;
    /**
     * Products in the order
     */
    products: OrderRefundedProduct[];
    /**
     * URL for customer to share to receive referral credit
     */
    purl_link?: string;
    /**
     * ID for referral that customer used to place the order
     */
    referral_identifier_id?: string;
    /**
     * Revenue ($) associated with the transaction (excluding shipping and tax)
     */
    revenue?: number;
    /**
     * Shipping cost associated with the transaction
     */
    shipping?: number;
    /**
     * City in the shipping address for the order
     */
    shipping_city?: string;
    /**
     * Country in the shipping address for the order
     */
    shipping_country?: string;
    shipping_method_details?: OrderRefundedShippingMethodDetails;
    /**
     * State in the shipping address for the order
     */
    shipping_state?: string;
    /**
     * Zipcode in the shipping address for the order
     */
    shipping_zipcode?: string;
    /**
     * Total tax associated with the transaction
     */
    tax?: number;
    /**
     * Order metadata "template_id"
     */
    template_id?: number;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    total: number;
    /**
     * Tracking IDs for third party integrations
     */
    tracking_ids?: {
        [key: string]: any;
    };
    [property: string]: any;
}
/**
 * The product
 */
export interface OrderRefundedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Number of SKUs in the bundle
     */
    bundle_size?: number;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Quantity sold via cross-selling
     */
    cross_sold_quantity?: number;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity: number;
    /**
     * SKU of the product variant
     */
    sku: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Metadata of the product variant
     */
    variant_metadata?: {
        [key: string]: any;
    };
    [property: string]: any;
}
export interface OrderRefundedShippingMethodDetails {
    /**
     * Code of shipping method chosen for the order (for example, "standard_shipping")
     */
    shipping_code?: string;
    /**
     * Name of shipping method chosen for the order (for example, "Standard Shipping")
     */
    shipping_method?: string;
    [property: string]: any;
}
/**
 * User updated the order
 */
export interface OrderUpdated {
    /**
     * Store or affiliation from which this transaction occurred (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Order metadata "campaign_id"
     */
    campaign_id?: number;
    /**
     * Channel where order was placed (for example, "chord")
     */
    channel?: string;
    /**
     * Checkout provider (for example, "stripe")
     */
    checkout_type?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Total discount associated with the transaction
     */
    discount?: number;
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * First name in the shipping address for the order
     */
    first_name?: string;
    /**
     * Order contains a subscription
     */
    has_subscription?: boolean;
    /**
     * Order contains a subscription
     */
    is_recurring?: boolean;
    /**
     * Last name in the shipping address for the order
     */
    last_name?: string;
    /**
     * Metadata of the order
     */
    metadata?: {
        [key: string]: any;
    };
    /**
     * Date and time order was placed
     */
    order_date?: string;
    /**
     * Order/transaction ID
     */
    order_id: string;
    /**
     * Phone number associated with the order
     */
    phone?: string;
    /**
     * Products in the order
     */
    products: OrderUpdatedProduct[];
    /**
     * URL for customer to share to receive referral credit
     */
    purl_link?: string;
    /**
     * ID for referral that customer used to place the order
     */
    referral_identifier_id?: string;
    /**
     * Revenue ($) associated with the transaction (excluding shipping and tax)
     */
    revenue?: number;
    /**
     * Shipping cost associated with the transaction
     */
    shipping?: number;
    /**
     * City in the shipping address for the order
     */
    shipping_city?: string;
    /**
     * Country in the shipping address for the order
     */
    shipping_country?: string;
    shipping_method_details?: OrderUpdatedShippingMethodDetails;
    /**
     * State in the shipping address for the order
     */
    shipping_state?: string;
    /**
     * Zipcode in the shipping address for the order
     */
    shipping_zipcode?: string;
    /**
     * Total tax associated with the transaction
     */
    tax?: number;
    /**
     * Order metadata "template_id"
     */
    template_id?: number;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    total: number;
    /**
     * Tracking IDs for third party integrations
     */
    tracking_ids?: {
        [key: string]: any;
    };
    [property: string]: any;
}
/**
 * The product
 */
export interface OrderUpdatedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Number of SKUs in the bundle
     */
    bundle_size?: number;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Quantity sold via cross-selling
     */
    cross_sold_quantity?: number;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity: number;
    /**
     * SKU of the product variant
     */
    sku: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Metadata of the product variant
     */
    variant_metadata?: {
        [key: string]: any;
    };
    [property: string]: any;
}
export interface OrderUpdatedShippingMethodDetails {
    /**
     * Code of shipping method chosen for the order (for example, "standard_shipping")
     */
    shipping_code?: string;
    /**
     * Name of shipping method chosen for the order (for example, "Standard Shipping")
     */
    shipping_method?: string;
    [property: string]: any;
}
/**
 * User completed the password reset process
 */
export interface PasswordResetCompleted {
    /**
     * Email address of the user
     */
    email?: string;
    /**
     * ID of the user
     */
    user_id?: string;
    [property: string]: any;
}
/**
 * User initiated the password reset process
 */
export interface PasswordResetStarted {
    /**
     * Email address of the user
     */
    email?: string;
    [property: string]: any;
}
/**
 * User added payment information
 */
export interface PaymentInfoEntered {
    /**
     * Checkout transaction ID
     */
    checkout_id?: string;
    /**
     * Transaction coupon redeemed with the transaction
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Order ID
     */
    order_id?: string;
    /**
     * String representing the payment method chosen
     */
    payment_method?: string;
    /**
     * Products in the order
     */
    products: PaymentInfoEnteredProduct[];
    /**
     * String representing the shipping the method chosen
     */
    shipping_method?: string;
    /**
     * Number representing a step in the checkout process
     */
    step: number;
    /**
     * Revenue ($) with discounts and coupons added in
     */
    value?: number;
    [property: string]: any;
}
/**
 * The product
 */
export interface PaymentInfoEnteredProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductAdded {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * ID of the current cart
     */
    cart_id?: string;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Number of installments for the prepaid subscription
     */
    installment_count?: number;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Whether the subscription is prepaid
     */
    prepaid?: boolean;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Products in the shopping cart
     */
    products: ProductAddedProduct[];
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    total: number;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Total value of the product after quantity
     */
    value: number;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductAddedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User added a product to the wish list
 */
export interface ProductAddedToWishlist {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Revenue ($) with discounts and coupons added in
     */
    value?: number;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Wishlist ID to which the product was added to
     */
    wishlist_id?: string;
    /**
     * Wishlist name to which the product was added to
     */
    wishlist_name?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductClicked {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Shopping cart ID
     */
    cart_id?: string;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * The ID of the list in which the item was presented to the user
     */
    item_list_id?: string;
    /**
     * The name of the list in which the item was presented to the user
     */
    item_list_name?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * An array including only the product clicked
     */
    products?: ProductClickedProduct[];
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductClickedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User clicked on a product details component or menu
 */
export interface ProductDetailsClicked {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * Title of the component or menu
     */
    title?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User filtered a product list or category
 */
export interface ProductListFiltered {
    /**
     * Product category being viewed
     */
    category?: string;
    /**
     * Product filters that the customer is using
     */
    filters?: Filter[];
    /**
     * The ID of the list in which the item was presented to the user
     */
    item_list_id?: string;
    /**
     * The name of the list in which the item was presented to the user
     */
    item_list_name?: string;
    /**
     * The ID of the list in which the item was presented to the user
     */
    list_id?: string;
    /**
     * Products in the order
     */
    products?: ProductListFilteredProduct[];
    /**
     * Product sorting that the customer is using
     */
    sorts?: Sort[];
    [property: string]: any;
}
/**
 * The filter
 */
export interface Filter {
    /**
     * ID of the filter type that the customer is using
     */
    type?: string;
    /**
     * ID of the selection that the customer chose
     */
    value?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductListFilteredProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The sort
 */
export interface Sort {
    /**
     * ID of the sort type that the customer is using
     */
    type?: string;
    /**
     * ID of the selection type the the customer is using (ascending, descending)
     */
    value?: string;
    [property: string]: any;
}
/**
 * User viewed a product list or category
 */
export interface ProductListViewed {
    /**
     * Product category being viewed
     */
    category?: string;
    /**
     * The ID of the list in which the item was presented to the user
     */
    item_list_id?: string;
    /**
     * The name of the list in which the item was presented to the user
     */
    item_list_name?: string;
    /**
     * The ID of the list in which the item was presented to the user
     */
    list_id?: string;
    /**
     * Products in the order
     */
    products: ProductListViewedProduct[];
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductListViewedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductRemoved {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * ID of the current cart
     */
    cart_id?: string;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Number of installments for the prepaid subscription
     */
    installment_count?: number;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Whether the subscription is prepaid
     */
    prepaid?: boolean;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Products in the shopping cart
     */
    products: ProductRemovedProduct[];
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * Revenue ($) with discounts and coupons added in.
     */
    total: number;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Revenue ($) with discounts and coupons added in
     */
    value?: number;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductRemovedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductRemovedFromWishlist {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Wishlist ID from which the product was removed
     */
    wishlist_id?: string;
    /**
     * Wishlist name from which the product was removed
     */
    wishlist_name?: string;
    [property: string]: any;
}
/**
 * User reviewed a product
 */
export interface ProductReviewed {
    /**
     * Product's ID
     */
    product_id: string;
    /**
     * Review rating
     */
    rating?: string;
    /**
     * Review body
     */
    review_body?: string;
    /**
     * Review ID
     */
    review_id?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductShared {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * Recipient of the sharing
     */
    recipient?: string;
    /**
     * Message that the sender sent
     */
    share_message?: string;
    /**
     * Method of sharing
     */
    share_via?: string;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductViewed {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Shopping cart ID
     */
    cart_id?: string;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency of the transaction
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * The ID of the list in which the item was presented to the user
     */
    item_list_id?: string;
    /**
     * The name of the list in which the item was presented to the user
     */
    item_list_name?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * An array including only the product viewed
     */
    products?: ProductViewedProduct[];
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Total value of the product after quantity
     */
    value?: number;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface ProductViewedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User searched for products
 */
export interface ProductsSearched {
    /**
     * Currency of the transaction (must be a valID ISO 4217 three-digit currency code)
     */
    currency?: string;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * Query the user searched with
     */
    query?: any;
    [property: string]: any;
}
/**
 * User clicked on promotion
 */
export interface PromotionClicked {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Promotion's creative (for example, top_banner_2)
     */
    creative?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Promotion's name (for example, "75% store-wide shoe sale")
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Promotion's position (for example, home_banner_top)
     */
    position?: string;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Promotion's ID (for example, promo_1)
     */
    promotion_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * User viewed promotion
 */
export interface PromotionViewed {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Promotion's creative (for example, top_banner_2)
     */
    creative?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Promotion's name (for example, "75% store-wide shoe sale")
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Promotion's position (for example, home_banner_top)
     */
    position?: string;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Promotion's ID (for example, promo_1)
     */
    promotion_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Order shipment has been delivered
 */
export interface ShipmentDelivered {
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * Order number (for example, "CHORD-000111222")
     */
    order_number?: string;
    /**
     * Shipment details
     */
    shipment?: ShipmentDeliveredShipment;
    [property: string]: any;
}
/**
 * Shipment details
 */
export interface ShipmentDeliveredShipment {
    /**
     * Shipment additional tax total
     */
    additional_tax_total?: number;
    /**
     * Shipment address
     */
    address?: PurpleAddress;
    /**
     * Adjustment total
     */
    adjustment_total?: number;
    /**
     * Name of carrier (for example, "ups")
     */
    carrier?: string;
    /**
     * Cost associated with shipment
     */
    cost?: number;
    /**
     * Tracking URL for customer to track shipment
     */
    external_tracking_url?: string;
    /**
     * Name of fulfillment provider
     */
    fulfilled_by?: string;
    /**
     * Included tax total
     */
    included_tax_total?: number;
    /**
     * Shipment label url
     */
    label_url?: string;
    /**
     * Shipment number
     */
    number?: string;
    /**
     * Products in the shipment
     */
    products?: PurpleProduct[];
    /**
     * Total discount from promotions
     */
    promo_total?: number;
    /**
     * Shipment has been successfully fulfilled
     */
    pushed?: boolean;
    /**
     * Shipment state (for example, "shipped")
     */
    state?: string;
    /**
     * Tracking number for shipment
     */
    tracking?: string;
    /**
     * Latest tracking update for shipment (for example, "Delivered, Front Door/Porch")
     */
    tracking_detail?: string;
    [property: string]: any;
}
/**
 * Shipment address
 */
export interface PurpleAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface PurpleProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Metadata of the product variant
     */
    variant_metadata?: {
        [key: string]: any;
    };
    [property: string]: any;
}
/**
 * Order shipment has been shipped
 */
export interface ShipmentShipped {
    /**
     * Email address associated with the order
     */
    email?: string;
    /**
     * Order number (for example, "CHORD-000111222")
     */
    order_number?: string;
    /**
     * Shipment details
     */
    shipment?: ShipmentShippedShipment;
    [property: string]: any;
}
/**
 * Shipment details
 */
export interface ShipmentShippedShipment {
    /**
     * Shipment additional tax total
     */
    additional_tax_total?: number;
    /**
     * Shipment address
     */
    address?: FluffyAddress;
    /**
     * Adjustment total
     */
    adjustment_total?: number;
    /**
     * Name of carrier (for example, "ups")
     */
    carrier?: string;
    /**
     * Cost associated with shipment
     */
    cost?: number;
    /**
     * Tracking URL for customer to track shipment
     */
    external_tracking_url?: string;
    /**
     * Name of fulfillment provider
     */
    fulfilled_by?: string;
    /**
     * Included tax total
     */
    included_tax_total?: number;
    /**
     * Shipment label url
     */
    label_url?: string;
    /**
     * Shipment number
     */
    number?: string;
    /**
     * Products in the shipment
     */
    products?: FluffyProduct[];
    /**
     * Total discount from promotions
     */
    promo_total?: number;
    /**
     * Shipment has been successfully fulfilled
     */
    pushed?: boolean;
    /**
     * Shipment state (for example, "shipped")
     */
    state?: string;
    /**
     * Tracking number for shipment
     */
    tracking?: string;
    /**
     * Latest tracking update for shipment (for example, "Delivered, Front Door/Porch")
     */
    tracking_detail?: string;
    [property: string]: any;
}
/**
 * Shipment address
 */
export interface FluffyAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface FluffyProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Metadata of the product variant
     */
    variant_metadata?: {
        [key: string]: any;
    };
    [property: string]: any;
}
/**
 * User logs into their account
 */
export interface SignedIn {
    /**
     * The email of the user
     */
    email?: string;
    /**
     * The method used to login
     */
    method?: string;
    [property: string]: any;
}
/**
 * User logs out of their account
 */
export interface SignedOut {
    /**
     * The email of the user
     */
    email?: string;
    [property: string]: any;
}
/**
 * User creates an account
 */
export interface SignedUp {
    /**
     * The email of the user
     */
    email?: string;
    /**
     * The method used to login
     */
    method?: string;
    [property: string]: any;
}
/**
 * A new stock request has been created
 */
export interface StockRequestCreated {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * ID of the current cart
     */
    cart_id?: string;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Email address to notify when the product is back in stock
     */
    email?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Address associated with subscription is updated
 */
export interface SubscriptionAddressUpdated {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionAddressUpdatedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionAddressUpdatedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionAddressUpdatedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionAddressUpdatedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: PurplePart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface PurplePart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * Subscription automatic renewal payment has failed
 */
export interface SubscriptionAutoRenewed {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionAutoRenewedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionAutoRenewedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionAutoRenewedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionAutoRenewedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: FluffyPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface FluffyPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * Subscription cancelled by the user, or failure to auto-renew.
 */
export interface SubscriptionCancelled {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionCancelledAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionCancelledProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionCancelledAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionCancelledProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: TentacledPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface TentacledPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * Subscription has been purchased
 */
export interface SubscriptionCreated {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionCreatedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionCreatedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionCreatedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionCreatedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: StickyPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface StickyPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * Subscription has expired
 */
export interface SubscriptionExpired {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionExpiredAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionExpiredProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionExpiredAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionExpiredProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: IndigoPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface IndigoPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * The upcoming order in a subscription is skipped, making the next order.
 */
export interface SubscriptionOrderSkipped {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionOrderSkippedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionOrderSkippedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionOrderSkippedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionOrderSkippedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: IndecentPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface IndecentPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * The subscription is paused and the date of processing is indicated on the
 * `actionable_date` property. A `null` date indicates that the subscription is paused
 * indefinitely.
 */
export interface SubscriptionPaused {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionPausedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionPausedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionPausedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionPausedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: HilariousPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface HilariousPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * Subscription automatic renewal payment has failed
 */
export interface SubscriptionPaymentFailed {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionPaymentFailedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionPaymentFailedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionPaymentFailedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionPaymentFailedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: AmbitiousPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface AmbitiousPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * Subscription reminder email of upcoming renewal has been sent
 */
export interface SubscriptionReminderSent {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionReminderSentAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionReminderSentProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionReminderSentAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionReminderSentProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: CunningPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface CunningPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * The paused subscription is resumed and the date of processing is indicated on the
 * `actioanable_date` property.
 */
export interface SubscriptionResumed {
    /**
     * Next date when this subscription will be actionable (renewed, expired, etc.)
     */
    actionable_date?: string;
    /**
     * Shipping address for the subscription
     */
    address?: SubscriptionResumedAddress;
    /**
     * Brand associated with the subscription
     */
    brand?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Email address associated with the subscription
     */
    email?: string;
    /**
     * Subscription will stop auto-renewing after this date
     */
    end_date?: string;
    /**
     * Interval number at which the subscription renews
     */
    interval_length?: number;
    /**
     * Interval unit at which the subscription renews (for example, "month")
     */
    interval_units?: string;
    /**
     * Products in the subscription
     */
    products?: SubscriptionResumedProduct[];
    /**
     * The state of the subscription (for example, "active")
     */
    state?: string;
    /**
     * ID of the subscription
     */
    subscription_id?: string;
    [property: string]: any;
}
/**
 * Shipping address for the subscription
 */
export interface SubscriptionResumedAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface SubscriptionResumedProduct {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * If the product is an assortment, the assortment parts
     */
    parts?: MagentaPart[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    [property: string]: any;
}
/**
 * Part
 */
export interface MagentaPart {
    /**
     * Assortment part name
     */
    name?: string;
    /**
     * Assortment part options text
     */
    options_text?: string;
    [property: string]: any;
}
/**
 * User added an address to their profile
 */
export interface UserAddressAdded {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * ID of the address
     */
    address_id?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Email address of the user
     */
    email?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * User removed an address from their profile
 */
export interface UserAddressRemoved {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * ID of the address
     */
    address_id?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Email address of the user
     */
    email?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * User updated an address in their profile
 */
export interface UserAddressUpdated {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * ID of the address
     */
    address_id?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Email address of the user
     */
    email?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * User account has been created
 */
export interface UserCreated {
    /**
     * User's default billing address
     */
    bill_address?: UserCreatedBillAddress;
    /**
     * Email address of the user
     */
    email?: string;
    /**
     * User metadata
     */
    metadata?: {
        [key: string]: any;
    };
    /**
     * User roles
     */
    roles?: string[];
    /**
     * User's default shipping address
     */
    ship_address?: UserCreatedShipAddress;
    [property: string]: any;
}
/**
 * User's default billing address
 */
export interface UserCreatedBillAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * Alternative phone number
     */
    alternative_phone?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Date billing address was created
     */
    created_at?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Date billing address was updated
     */
    updated_at?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * User's default shipping address
 */
export interface UserCreatedShipAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * Alternative phone number
     */
    alternative_phone?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Date billing address was created
     */
    created_at?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Date billing address was updated
     */
    updated_at?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * User account has been updated
 */
export interface UserUpdated {
    /**
     * User's default billing address
     */
    bill_address?: UserUpdatedBillAddress;
    /**
     * Email address of the user
     */
    email?: string;
    /**
     * User metadata
     */
    metadata?: {
        [key: string]: any;
    };
    /**
     * User roles
     */
    roles?: string[];
    /**
     * User's default shipping address
     */
    ship_address?: UserUpdatedShipAddress;
    [property: string]: any;
}
/**
 * User's default billing address
 */
export interface UserUpdatedBillAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * Alternative phone number
     */
    alternative_phone?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Date billing address was created
     */
    created_at?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Date billing address was updated
     */
    updated_at?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * User's default shipping address
 */
export interface UserUpdatedShipAddress {
    /**
     * Street address (line 1)
     */
    address1?: string;
    /**
     * Street address (line 2)
     */
    address2?: string;
    /**
     * Alternative phone number
     */
    alternative_phone?: string;
    /**
     * City
     */
    city?: string;
    /**
     * Company
     */
    company?: string;
    /**
     * Country
     */
    country?: string;
    /**
     * Date billing address was created
     */
    created_at?: string;
    /**
     * Name
     */
    name?: string;
    /**
     * Phone number
     */
    phone?: string;
    /**
     * State
     */
    state?: string;
    /**
     * Date billing address was updated
     */
    updated_at?: string;
    /**
     * Zipcode
     */
    zipcode?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface VariantClicked {
    /**
     * Product affiliation to designate a supplying company or brick and mortar store location
     * (for example, "Google Store")
     */
    affiliation?: string;
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Cart ID associated with the product displayed
     */
    cart_id?: string;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Currency code of the transaction (for example, "USD")
     */
    currency?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Database ID of the line item
     */
    line_item_id?: string;
    /**
     * Name of the product
     */
    name?: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id?: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Database ID of the variant
     */
    variant_id?: string;
    [property: string]: any;
}
/**
 * The product
 */
export interface WishlistProductAddedToCart {
    /**
     * Brand associated with the product
     */
    brand?: string;
    /**
     * Product belongs to a bundle
     */
    bundle?: boolean;
    /**
     * Product category
     */
    category?: string;
    /**
     * Coupon code associated with a product (for example, "MAY_DEALS_3")
     */
    coupon?: string;
    /**
     * Short description of the product
     */
    description?: string;
    /**
     * Image URL of the product
     */
    image_url?: string;
    /**
     * Name of the product
     */
    name: string;
    /**
     * Option values of the product variant
     */
    option_values?: string[];
    /**
     * Position in the product list (for example, 3)
     */
    position?: number;
    /**
     * Price ($) of the product
     */
    price?: number;
    /**
     * Database ID of the product
     */
    product_id: string;
    /**
     * Quantity of the product
     */
    quantity?: number;
    /**
     * SKU of the product variant
     */
    sku?: string;
    /**
     * Slug of the product, often used in URLs (for example, "product-red")
     */
    slug?: string;
    /**
     * URL of the product page
     */
    url?: string;
    /**
     * Name of the product variant
     */
    variant?: string;
    /**
     * Wishlist ID to which the product was added to
     */
    wishlist_id?: string;
    /**
     * Wishlist name to which the product was added to
     */
    wishlist_name?: string;
    [property: string]: any;
}
/**
 * The analytics.js snippet should be available via window.analytics.
 * You can install it by following instructions at: https://segment.com/docs/connections/sources/catalog/libraries/website/javascript/
 * Make sure to also include the TypeScript declarations with: `npm install @segment/analytics-next` (install with --save-dev for type definitions only).
 *
 * If you don't want to use the snippet, you can also install the `@segment/analytics-next` library as a *production* dependency and use it like this:
 * ```ts
 * import { AnalyticsBrowser } from '@segment/analytics-next'
 * import { setTypewriterOptions } from './analytics'
 *
 * const analytics = AnalyticsBrowser.load({ writeKey: 'SEGMENT_WRITE_KEY' })
 *
 * setTypewriterOptions({ analytics: analytics })
 */
import type { AnalyticsSnippet } from '@segment/analytics-next';
declare global {
    interface Window {
        analytics: AnalyticsSnippet;
    }
}
/** The callback exposed by analytics.js. */
export type Callback = () => void;
export type ViolationHandler = (message: Record<string, any>, violations: any[]) => void;
