import { NonNullablePaths } from '@wix/sdk-types'; interface CustomTrigger { /** * Unique ID of the trigger * @minLength 1 * @maxLength 100 */ _id?: string; /** * App ID of the trigger provider * @format GUID */ appId?: string; } interface GetEligibleTriggersRequest { /** * List of line items to check the custom triggers on * @maxSize 1000 */ lineItems?: LineItem[]; /** * List of custom triggers to check 'is eligible' on * @minSize 1 * @maxSize 1000 */ triggers?: TriggerToFilterBy[]; /** * Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order. * @format GUID */ purchaseFlowId?: string | null; /** Shipping information. */ shippingInfo?: ShippingInfo; } interface LineItem { /** * Line item ID. * @minLength 1 * @maxLength 100 */ _id?: string; /** * Item quantity in this line item. * @max 100000 */ quantity?: number | null; /** * Catalog and item reference. Holds IDs for the item and the catalog it came from, as well as further optional info. * This field may be empty in the case of a custom line item. */ catalogReference?: CatalogReference; /** * Price of a single item. * @decimalValue options { gte:0 } */ price?: string; } /** Used for grouping line items. Sent when an item is added to a cart, checkout, or order. */ interface CatalogReference { /** * ID of the item within the catalog it belongs to. * @minLength 1 * @maxLength 36 */ catalogItemId?: string; /** * ID of the app providing the catalog. * * You can get your app's ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/). * * For items from Wix catalogs, the following values always apply: * + Wix Stores: `"215238eb-22a5-4c36-9e7b-e7c08025e04e"` * + Wix Bookings: `"13d21c63-b5ec-5912-8397-c3a5ddb27a97"` * + Wix Restaurants: `"9a5d83fd-8570-482e-81ab-cfa88942ee60"` * @minLength 1 */ appId?: string; /** * Additional item details in `key:value` pairs. * * Use this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items. * * For Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration) * or [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction). */ options?: Record | null; } interface TriggerToFilterBy { /** Custom trigger */ customTrigger?: CustomTrigger; /** * Unique identifier that will return in `EligibleTrigger.identifier` to distinguish between scopes * @minLength 1 * @maxLength 120 */ identifier?: string | null; } interface ShippingInfo { /** Address (if applicable). */ address?: Address; /** * Preferred shipping option code. For example, "usps_std_overnight". * @minLength 1 * @maxLength 100 */ preferredShippingOptionCode?: string | null; } interface Address { /** * Two-letter country code in [ISO-3166 alpha-2](https://www.iso.org/obp/ui/#search/code/) format. * @format COUNTRY */ country?: string | null; /** * Code for a subdivision (such as state, prefecture, or province) in [ISO 3166-2](https://www.iso.org/standard/72483.html) format. * @maxLength 50 */ subdivision?: string | null; /** * City name. * @maxLength 50 */ city?: string | null; } interface GetEligibleTriggersResponse { /** * A List of eligible custom triggers * @maxSize 1000 */ eligibleTriggers?: EligibleTrigger[]; } interface EligibleTrigger { /** * The ID of the custom trigger * @minLength 1 * @maxLength 100 */ customTriggerId?: string; /** * The id of the application implements this custom trigger * @format GUID */ appId?: string; /** * Unique identifier that was assigned in `TriggerToFilterBy.identifier` to distinguish between custom triggers * @minLength 1 * @maxLength 120 */ identifier?: string | null; } interface ListTriggersRequest { } interface ListTriggersResponse { /** * A list of all custom triggers * @maxSize 1000 */ triggers?: ListTriggersResponseCustomTrigger[]; } interface ListTriggersResponseCustomTrigger { /** * Unique ID of the custom trigger * @minLength 1 * @maxLength 100 */ _id?: string; /** * App ID of the custom trigger provider * @format GUID */ appId?: string; /** * Custom Trigger display name * @minLength 1 * @maxLength 200 */ name?: string; } /** * List all custom triggers that are available on a given site * @public * @documentationMaturity preview * @permissionId ECOM.CUSTOM_TRIGGERS_READ * @applicableIdentity APP * @fqn com.wix.ecom.custom_trigger.v1.CustomTriggersService.ListTriggers */ declare function listTriggers(): Promise>; export { type Address, type CatalogReference, type CustomTrigger, type EligibleTrigger, type GetEligibleTriggersRequest, type GetEligibleTriggersResponse, type LineItem, type ListTriggersRequest, type ListTriggersResponse, type ListTriggersResponseCustomTrigger, type ShippingInfo, type TriggerToFilterBy, listTriggers };