/** * Available locales in Saleor Dashboard. * TODO: Extract to shared package between Dashboard and sdk, so this stay in sync? */ type LocaleCode = "ar" | "az" | "bg" | "bn" | "ca" | "cs" | "da" | "de" | "el" | "en" | "es" | "es-CO" | "et" | "fa" | "fr" | "hi" | "hu" | "hy" | "id" | "is" | "it" | "ja" | "ko" | "mn" | "nb" | "nl" | "pl" | "pt" | "pt-BR" | "ro" | "ru" | "sk" | "sl" | "sq" | "sr" | "sv" | "th" | "tr" | "uk" | "vi" | "zh-Hans" | "zh-Hant"; /** Method of presenting the interface `POPUP` will present the interface in a modal overlay `APP_PAGE` will navigate to the application page `NEW_TAB` will open the application in a new tab `WIDGET` will render the interface as a widget in the dashboard @default `POPUP` */ type AppExtensionTarget = "POPUP" | "APP_PAGE" | "NEW_TAB" | "WIDGET"; type AppExtensionMount3_22 = "CATEGORY_OVERVIEW_CREATE" | "CATEGORY_OVERVIEW_MORE_ACTIONS" | "CATEGORY_DETAILS_MORE_ACTIONS" | "COLLECTION_OVERVIEW_CREATE" | "COLLECTION_OVERVIEW_MORE_ACTIONS" | "COLLECTION_DETAILS_MORE_ACTIONS" | "GIFT_CARD_OVERVIEW_CREATE" | "GIFT_CARD_OVERVIEW_MORE_ACTIONS" | "GIFT_CARD_DETAILS_MORE_ACTIONS" | "DRAFT_ORDER_DETAILS_MORE_ACTIONS" | "DRAFT_ORDER_OVERVIEW_CREATE" | "DRAFT_ORDER_OVERVIEW_MORE_ACTIONS" | "DISCOUNT_DETAILS_MORE_ACTIONS" | "DISCOUNT_OVERVIEW_CREATE" | "DISCOUNT_OVERVIEW_MORE_ACTIONS" | "VOUCHER_DETAILS_MORE_ACTIONS" | "VOUCHER_OVERVIEW_CREATE" | "VOUCHER_OVERVIEW_MORE_ACTIONS" | "PAGE_DETAILS_MORE_ACTIONS" | "PAGE_OVERVIEW_CREATE" | "PAGE_OVERVIEW_MORE_ACTIONS" | "PAGE_TYPE_OVERVIEW_CREATE" | "PAGE_TYPE_OVERVIEW_MORE_ACTIONS" | "PAGE_TYPE_DETAILS_MORE_ACTIONS" | "MENU_OVERVIEW_CREATE" | "MENU_OVERVIEW_MORE_ACTIONS" | "MENU_DETAILS_MORE_ACTIONS" | "COLLECTION_DETAILS_WIDGETS" | "CUSTOMER_DETAILS_WIDGETS" | "PRODUCT_DETAILS_WIDGETS" | "ORDER_DETAILS_WIDGETS" | "DRAFT_ORDER_DETAILS_WIDGETS" | "VOUCHER_DETAILS_WIDGETS" | "GIFT_CARD_DETAILS_WIDGETS" | "TRANSLATIONS_MORE_ACTIONS"; type AppExtensionMount = AppExtensionMount3_22 | "CUSTOMER_OVERVIEW_CREATE" | "CUSTOMER_OVERVIEW_MORE_ACTIONS" | "CUSTOMER_DETAILS_MORE_ACTIONS" | "PRODUCT_OVERVIEW_CREATE" | "PRODUCT_OVERVIEW_MORE_ACTIONS" | "PRODUCT_DETAILS_MORE_ACTIONS" | "NAVIGATION_CATALOG" | "NAVIGATION_ORDERS" | "NAVIGATION_CUSTOMERS" | "NAVIGATION_DISCOUNTS" | "NAVIGATION_TRANSLATIONS" | "NAVIGATION_PAGES" | "ORDER_DETAILS_MORE_ACTIONS" | "ORDER_OVERVIEW_CREATE" | "ORDER_OVERVIEW_MORE_ACTIONS"; /** * All permissions that users can have * Reference https://docs.saleor.io/docs/3.x/api-reference/enums/permission-enum */ type Permission = "MANAGE_USERS" | "MANAGE_STAFF" | "IMPERSONATE_USER" | "MANAGE_OBSERVABILITY" | "MANAGE_CHECKOUTS" | "HANDLE_CHECKOUTS" | "HANDLE_TAXES" | "MANAGE_TAXES" | "MANAGE_CHANNELS" | "MANAGE_DISCOUNTS" | "MANAGE_GIFT_CARD" | "MANAGE_MENUS" | "MANAGE_ORDERS" | "MANAGE_ORDERS_IMPORT" | "MANAGE_PAGES" | "MANAGE_PAGE_TYPES_AND_ATTRIBUTES" | "HANDLE_PAYMENTS" | "MANAGE_PLUGINS" | "MANAGE_PRODUCTS" | "MANAGE_PRODUCT_TYPES_AND_ATTRIBUTES" | "MANAGE_SHIPPING" | "MANAGE_SETTINGS" | "MANAGE_TRANSLATIONS" | "MANAGE_APPS"; /** * All permissions that App can have. */ type AppPermission = Exclude; /** * @see https://docs.saleor.io/api-reference/webhooks/enums/webhook-event-type-async-enum */ type AsyncWebhookEventType = "ACCOUNT_CONFIRMATION_REQUESTED" | "ACCOUNT_CHANGE_EMAIL_REQUESTED" | "ACCOUNT_EMAIL_CHANGED" | "ACCOUNT_SET_PASSWORD_REQUESTED" | "ACCOUNT_CONFIRMED" | "ACCOUNT_DELETE_REQUESTED" | "ACCOUNT_DELETED" | "ADDRESS_CREATED" | "ADDRESS_UPDATED" | "ADDRESS_DELETED" | "APP_INSTALLED" | "APP_UPDATED" | "APP_DELETED" | "APP_STATUS_CHANGED" | "ATTRIBUTE_CREATED" | "ATTRIBUTE_UPDATED" | "ATTRIBUTE_DELETED" | "ATTRIBUTE_VALUE_CREATED" | "ATTRIBUTE_VALUE_UPDATED" | "ATTRIBUTE_VALUE_DELETED" | "CATEGORY_CREATED" | "CATEGORY_UPDATED" | "CATEGORY_DELETED" | "CHANNEL_CREATED" | "CHANNEL_UPDATED" | "CHANNEL_DELETED" | "CHANNEL_STATUS_CHANGED" | "CHANNEL_METADATA_UPDATED" | "GIFT_CARD_CREATED" | "GIFT_CARD_UPDATED" | "GIFT_CARD_DELETED" | "GIFT_CARD_SENT" | "GIFT_CARD_STATUS_CHANGED" | "GIFT_CARD_METADATA_UPDATED" | "GIFT_CARD_EXPORT_COMPLETED" | "MENU_CREATED" | "MENU_UPDATED" | "MENU_DELETED" | "MENU_ITEM_CREATED" | "MENU_ITEM_UPDATED" | "MENU_ITEM_DELETED" | "ORDER_CREATED" | "ORDER_CONFIRMED" | "ORDER_PAID" | "ORDER_FULLY_PAID" | "ORDER_REFUNDED" | "ORDER_FULLY_REFUNDED" | "ORDER_UPDATED" | "ORDER_CANCELLED" | "ORDER_EXPIRED" | "ORDER_FULFILLED" | "ORDER_METADATA_UPDATED" | "ORDER_BULK_CREATED" | "DRAFT_ORDER_CREATED" | "DRAFT_ORDER_UPDATED" | "DRAFT_ORDER_DELETED" | "SALE_CREATED" | "SALE_UPDATED" | "SALE_DELETED" | "SALE_TOGGLE" | "PROMOTION_CREATED" | "PROMOTION_UPDATED" | "PROMOTION_DELETED" | "PROMOTION_STARTED" | "PROMOTION_ENDED" | "PROMOTION_RULE_CREATED" | "PROMOTION_RULE_UPDATED" | "PROMOTION_RULE_DELETED" | "INVOICE_REQUESTED" | "INVOICE_DELETED" | "INVOICE_SENT" | "CUSTOMER_CREATED" | "CUSTOMER_UPDATED" | "CUSTOMER_DELETED" | "CUSTOMER_METADATA_UPDATED" | "COLLECTION_CREATED" | "COLLECTION_UPDATED" | "COLLECTION_DELETED" | "COLLECTION_METADATA_UPDATED" | "PRODUCT_CREATED" | "PRODUCT_UPDATED" | "PRODUCT_DELETED" | "PRODUCT_METADATA_UPDATED" | "PRODUCT_EXPORT_COMPLETED" | "PRODUCT_MEDIA_CREATED" | "PRODUCT_MEDIA_UPDATED" | "PRODUCT_MEDIA_DELETED" | "PRODUCT_VARIANT_CREATED" | "PRODUCT_VARIANT_UPDATED" | "PRODUCT_VARIANT_DELETED" | "PRODUCT_VARIANT_OUT_OF_STOCK" | "PRODUCT_VARIANT_BACK_IN_STOCK" | "PRODUCT_VARIANT_STOCK_UPDATED" | "PRODUCT_VARIANT_METADATA_UPDATED" | "CHECKOUT_CREATED" | "CHECKOUT_UPDATED" | "CHECKOUT_FULLY_AUTHORIZED" | "CHECKOUT_FULLY_PAID" | "CHECKOUT_METADATA_UPDATED" | "FULFILLMENT_CREATED" | "FULFILLMENT_CANCELED" | "FULFILLMENT_APPROVED" | "FULFILLMENT_METADATA_UPDATED" | "FULFILLMENT_TRACKING_NUMBER_UPDATED" | "NOTIFY_USER" | "PAGE_CREATED" | "PAGE_UPDATED" | "PAGE_DELETED" | "PAGE_TYPE_CREATED" | "PAGE_TYPE_UPDATED" | "PAGE_TYPE_DELETED" | "PERMISSION_GROUP_CREATED" | "PERMISSION_GROUP_UPDATED" | "PERMISSION_GROUP_DELETED" | "SHIPPING_PRICE_CREATED" | "SHIPPING_PRICE_UPDATED" | "SHIPPING_PRICE_DELETED" | "SHIPPING_ZONE_CREATED" | "SHIPPING_ZONE_UPDATED" | "SHIPPING_ZONE_DELETED" | "SHIPPING_ZONE_METADATA_UPDATED" | "STAFF_CREATED" | "STAFF_UPDATED" | "STAFF_DELETED" | "STAFF_SET_PASSWORD_REQUESTED" | "TRANSACTION_ACTION_REQUEST" | "TRANSACTION_ITEM_METADATA_UPDATED" | "TRANSLATION_CREATED" | "TRANSLATION_UPDATED" | "WAREHOUSE_CREATED" | "WAREHOUSE_UPDATED" | "WAREHOUSE_DELETED" | "WAREHOUSE_METADATA_UPDATED" | "VOUCHER_CREATED" | "VOUCHER_UPDATED" | "VOUCHER_DELETED" | "VOUCHER_CODES_CREATED" | "VOUCHER_CODES_DELETED" | "VOUCHER_METADATA_UPDATED" | "VOUCHER_CODE_EXPORT_COMPLETED" | "OBSERVABILITY" | "THUMBNAIL_CREATED" | "SHOP_METADATA_UPDATED"; /** * @see https://github.com/saleor/saleor/blob/main/saleor/graphql/schema.graphql#L1995 * */ type SyncWebhookEventType = "CHECKOUT_CALCULATE_TAXES" | "ORDER_CALCULATE_TAXES" | "SHIPPING_LIST_METHODS_FOR_CHECKOUT" | "CHECKOUT_FILTER_SHIPPING_METHODS" | "ORDER_FILTER_SHIPPING_METHODS" | "TRANSACTION_CHARGE_REQUESTED" | "TRANSACTION_REFUND_REQUESTED" | "TRANSACTION_CANCELATION_REQUESTED" | "PAYMENT_GATEWAY_INITIALIZE_SESSION" | "TRANSACTION_INITIALIZE_SESSION" | "TRANSACTION_PROCESS_SESSION" | "LIST_STORED_PAYMENT_METHODS" | "STORED_PAYMENT_METHOD_DELETE_REQUESTED" | "PAYMENT_GATEWAY_INITIALIZE_TOKENIZATION_SESSION" | "PAYMENT_METHOD_INITIALIZE_TOKENIZATION_SESSION" | "PAYMENT_METHOD_PROCESS_TOKENIZATION_SESSION"; interface BaseAppExtension { /** Name which will be displayed in the dashboard */ label: string; /** the place where the extension will be mounted */ mount: AppExtensionMount; permissions: AppPermission[]; /** URL of the view to display; you can skip the domain and protocol when target is set to `APP_PAGE`, or when your manifest defines an `appUrl`. When target is set to `POPUP`, the url will be used to render an `