/* eslint-disable */ export type Maybe = T; export type InputMaybe = T; export type Exact = { [K in keyof T]: T[K] }; export type MakeOptional = Omit & { [SubKey in K]?: Maybe }; export type MakeMaybe = Omit & { [SubKey in K]: Maybe }; export type MakeEmpty = { [_ in K]?: never }; export type Incremental = T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: { input: string | number; output: string | number; } String: { input: string; output: string; } Boolean: { input: boolean; output: boolean; } Int: { input: number; output: number; } Float: { input: number; output: number; } DateTime: { input: any; output: any; } JSON: { input: any; output: any; } Money: { input: number; output: number; } Upload: { input: any; output: any; } }; export type AddFulfillmentToOrderResult = CreateFulfillmentError | EmptyOrderLineSelectionError | Fulfillment | FulfillmentStateTransitionError | InsufficientStockOnHandError | InvalidFulfillmentHandlerError | ItemsAlreadyFulfilledError; export type AddItemInput = { productVariantId: Scalars['ID']['input']; quantity: Scalars['Int']['input']; }; export type AddItemToDraftOrderInput = { productVariantId: Scalars['ID']['input']; quantity: Scalars['Int']['input']; }; export type AddManualPaymentToOrderResult = ManualPaymentStateError | Order; export type AddNoteToCustomerInput = { id: Scalars['ID']['input']; isPublic: Scalars['Boolean']['input']; note: Scalars['String']['input']; }; export type AddNoteToOrderInput = { id: Scalars['ID']['input']; isPublic: Scalars['Boolean']['input']; note: Scalars['String']['input']; }; export type Address = Node & { __typename?: 'Address'; city?: Maybe; company?: Maybe; country: Country; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; defaultBillingAddress?: Maybe; defaultShippingAddress?: Maybe; fullName?: Maybe; id: Scalars['ID']['output']; phoneNumber?: Maybe; postalCode?: Maybe; province?: Maybe; streetLine1: Scalars['String']['output']; streetLine2?: Maybe; updatedAt: Scalars['DateTime']['output']; }; export type AdjustDraftOrderLineInput = { orderLineId: Scalars['ID']['input']; quantity: Scalars['Int']['input']; }; export type Adjustment = { __typename?: 'Adjustment'; adjustmentSource: Scalars['String']['output']; amount: Scalars['Money']['output']; data?: Maybe; description: Scalars['String']['output']; type: AdjustmentType; }; export enum AdjustmentType { DISTRIBUTED_ORDER_PROMOTION = 'DISTRIBUTED_ORDER_PROMOTION', OTHER = 'OTHER', PROMOTION = 'PROMOTION' } export type Administrator = Node & { __typename?: 'Administrator'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; emailAddress: Scalars['String']['output']; firstName: Scalars['String']['output']; id: Scalars['ID']['output']; lastName: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; user: User; }; export type AdministratorFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; id?: InputMaybe; lastName?: InputMaybe; updatedAt?: InputMaybe; }; export type AdministratorList = PaginatedList & { __typename?: 'AdministratorList'; items: Array; totalItems: Scalars['Int']['output']; }; export type AdministratorListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type AdministratorPaymentInput = { metadata?: InputMaybe; paymentMethod?: InputMaybe; }; export type AdministratorRefundInput = { /** * The amount to be refunded to this particular Payment. This was introduced in * v2.2.0 as the preferred way to specify the refund amount. The `lines`, `shipping` and `adjustment` * fields will be removed in a future version. */ amount?: InputMaybe; paymentId: Scalars['ID']['input']; reason?: InputMaybe; }; export type AdministratorSortParameter = { createdAt?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; id?: InputMaybe; lastName?: InputMaybe; updatedAt?: InputMaybe; }; export type Allocation = Node & StockMovement & { __typename?: 'Allocation'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; orderLine: OrderLine; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; /** Returned if an attempting to refund an OrderItem which has already been refunded */ export type AlreadyRefundedError = ErrorResult & { __typename?: 'AlreadyRefundedError'; errorCode: ErrorCode; message: Scalars['String']['output']; refundId: Scalars['ID']['output']; }; export type ApplyCouponCodeResult = CouponCodeExpiredError | CouponCodeInvalidError | CouponCodeLimitError | Order; export type Asset = Node & { __typename?: 'Asset'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; fileSize: Scalars['Int']['output']; focalPoint?: Maybe; height: Scalars['Int']['output']; id: Scalars['ID']['output']; mimeType: Scalars['String']['output']; name: Scalars['String']['output']; preview: Scalars['String']['output']; source: Scalars['String']['output']; tags: Array; type: AssetType; updatedAt: Scalars['DateTime']['output']; width: Scalars['Int']['output']; }; export type AssetFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; fileSize?: InputMaybe; height?: InputMaybe; id?: InputMaybe; mimeType?: InputMaybe; name?: InputMaybe; preview?: InputMaybe; source?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; width?: InputMaybe; }; export type AssetList = PaginatedList & { __typename?: 'AssetList'; items: Array; totalItems: Scalars['Int']['output']; }; export type AssetListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; tags?: InputMaybe>; tagsOperator?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type AssetSortParameter = { createdAt?: InputMaybe; fileSize?: InputMaybe; height?: InputMaybe; id?: InputMaybe; mimeType?: InputMaybe; name?: InputMaybe; preview?: InputMaybe; source?: InputMaybe; updatedAt?: InputMaybe; width?: InputMaybe; }; export enum AssetType { BINARY = 'BINARY', IMAGE = 'IMAGE', VIDEO = 'VIDEO' } export type AssignAssetsToChannelInput = { assetIds: Array; channelId: Scalars['ID']['input']; }; export type AssignCollectionsToChannelInput = { channelId: Scalars['ID']['input']; collectionIds: Array; }; export type AssignFacetsToChannelInput = { channelId: Scalars['ID']['input']; facetIds: Array; }; export type AssignPaymentMethodsToChannelInput = { channelId: Scalars['ID']['input']; paymentMethodIds: Array; }; export type AssignProductVariantsToChannelInput = { channelId: Scalars['ID']['input']; priceFactor?: InputMaybe; productVariantIds: Array; }; export type AssignProductsToChannelInput = { channelId: Scalars['ID']['input']; priceFactor?: InputMaybe; productIds: Array; }; export type AssignPromotionsToChannelInput = { channelId: Scalars['ID']['input']; promotionIds: Array; }; export type AssignShippingMethodsToChannelInput = { channelId: Scalars['ID']['input']; shippingMethodIds: Array; }; export type AssignStockLocationsToChannelInput = { channelId: Scalars['ID']['input']; stockLocationIds: Array; }; export type AuthenticationInput = { native?: InputMaybe; }; export type AuthenticationMethod = Node & { __typename?: 'AuthenticationMethod'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; strategy: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type AuthenticationResult = CurrentUser | InvalidCredentialsError; export type BooleanCustomFieldConfig = CustomField & { __typename?: 'BooleanCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; /** Operators for filtering on a list of Boolean fields */ export type BooleanListOperators = { inList: Scalars['Boolean']['input']; }; /** Operators for filtering on a Boolean field */ export type BooleanOperators = { eq?: InputMaybe; isNull?: InputMaybe; }; export type BooleanStructFieldConfig = StructField & { __typename?: 'BooleanStructFieldConfig'; description?: Maybe>; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; type: Scalars['String']['output']; ui?: Maybe; }; /** Returned if an attempting to cancel lines from an Order which is still active */ export type CancelActiveOrderError = ErrorResult & { __typename?: 'CancelActiveOrderError'; errorCode: ErrorCode; message: Scalars['String']['output']; orderState: Scalars['String']['output']; }; export type CancelOrderInput = { /** Specify whether the shipping charges should also be cancelled. Defaults to false */ cancelShipping?: InputMaybe; /** Optionally specify which OrderLines to cancel. If not provided, all OrderLines will be cancelled */ lines?: InputMaybe>; /** The id of the order to be cancelled */ orderId: Scalars['ID']['input']; reason?: InputMaybe; }; export type CancelOrderResult = CancelActiveOrderError | EmptyOrderLineSelectionError | MultipleOrderError | Order | OrderStateTransitionError | QuantityTooGreatError; /** Returned if the Payment cancellation fails */ export type CancelPaymentError = ErrorResult & { __typename?: 'CancelPaymentError'; errorCode: ErrorCode; message: Scalars['String']['output']; paymentErrorMessage: Scalars['String']['output']; }; export type CancelPaymentResult = CancelPaymentError | Payment | PaymentStateTransitionError; export type Cancellation = Node & StockMovement & { __typename?: 'Cancellation'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; orderLine: OrderLine; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; export type Channel = Node & { __typename?: 'Channel'; availableCurrencyCodes: Array; availableLanguageCodes?: Maybe>; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; /** @deprecated Use defaultCurrencyCode instead */ currencyCode: CurrencyCode; customFields?: Maybe; defaultCurrencyCode: CurrencyCode; defaultLanguageCode: LanguageCode; defaultShippingZone?: Maybe; defaultTaxZone?: Maybe; id: Scalars['ID']['output']; /** Not yet used - will be implemented in a future release. */ outOfStockThreshold?: Maybe; pricesIncludeTax: Scalars['Boolean']['output']; seller?: Maybe; token: Scalars['String']['output']; /** Not yet used - will be implemented in a future release. */ trackInventory?: Maybe; updatedAt: Scalars['DateTime']['output']; }; /** * Returned when the default LanguageCode of a Channel is no longer found in the `availableLanguages` * of the GlobalSettings */ export type ChannelDefaultLanguageError = ErrorResult & { __typename?: 'ChannelDefaultLanguageError'; channelCode: Scalars['String']['output']; errorCode: ErrorCode; language: Scalars['String']['output']; message: Scalars['String']['output']; }; export type ChannelFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; currencyCode?: InputMaybe; defaultCurrencyCode?: InputMaybe; defaultLanguageCode?: InputMaybe; id?: InputMaybe; outOfStockThreshold?: InputMaybe; pricesIncludeTax?: InputMaybe; token?: InputMaybe; trackInventory?: InputMaybe; updatedAt?: InputMaybe; }; export type ChannelList = PaginatedList & { __typename?: 'ChannelList'; items: Array; totalItems: Scalars['Int']['output']; }; export type ChannelListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type ChannelSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; id?: InputMaybe; outOfStockThreshold?: InputMaybe; token?: InputMaybe; updatedAt?: InputMaybe; }; export type Collection = Node & { __typename?: 'Collection'; assets: Array; breadcrumbs: Array; children?: Maybe>; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; description: Scalars['String']['output']; featuredAsset?: Maybe; filters: Array; id: Scalars['ID']['output']; inheritFilters: Scalars['Boolean']['output']; isPrivate: Scalars['Boolean']['output']; languageCode?: Maybe; name: Scalars['String']['output']; parent?: Maybe; parentId: Scalars['ID']['output']; position: Scalars['Int']['output']; productVariants: ProductVariantList; slug: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; }; export type CollectionProductVariantsArgs = { options?: InputMaybe; }; export type CollectionBreadcrumb = { __typename?: 'CollectionBreadcrumb'; id: Scalars['ID']['output']; name: Scalars['String']['output']; slug: Scalars['String']['output']; }; export type CollectionFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; inheritFilters?: InputMaybe; isPrivate?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; parentId?: InputMaybe; position?: InputMaybe; slug?: InputMaybe; updatedAt?: InputMaybe; }; export type CollectionList = PaginatedList & { __typename?: 'CollectionList'; items: Array; totalItems: Scalars['Int']['output']; }; export type CollectionListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; topLevelOnly?: InputMaybe; }; /** * Which Collections are present in the products returned * by the search, and in what quantity. */ export type CollectionResult = { __typename?: 'CollectionResult'; collection: Collection; count: Scalars['Int']['output']; }; export type CollectionSortParameter = { createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; name?: InputMaybe; parentId?: InputMaybe; position?: InputMaybe; slug?: InputMaybe; updatedAt?: InputMaybe; }; export type CollectionTranslation = { __typename?: 'CollectionTranslation'; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; slug: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ConfigArg = { __typename?: 'ConfigArg'; name: Scalars['String']['output']; value: Scalars['String']['output']; }; export type ConfigArgDefinition = { __typename?: 'ConfigArgDefinition'; defaultValue?: Maybe; description?: Maybe; label?: Maybe; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; required: Scalars['Boolean']['output']; type: Scalars['String']['output']; ui?: Maybe; }; export type ConfigArgInput = { name: Scalars['String']['input']; /** A JSON stringified representation of the actual value */ value: Scalars['String']['input']; }; export type ConfigurableOperation = { __typename?: 'ConfigurableOperation'; args: Array; code: Scalars['String']['output']; }; export type ConfigurableOperationDefinition = { __typename?: 'ConfigurableOperationDefinition'; args: Array; code: Scalars['String']['output']; description: Scalars['String']['output']; }; export type ConfigurableOperationInput = { arguments: Array; code: Scalars['String']['input']; }; export type Coordinate = { __typename?: 'Coordinate'; x: Scalars['Float']['output']; y: Scalars['Float']['output']; }; export type CoordinateInput = { x: Scalars['Float']['input']; y: Scalars['Float']['input']; }; /** * A Country of the world which your shop operates in. * * The `code` field is typically a 2-character ISO code such as "GB", "US", "DE" etc. This code is used in certain inputs such as * `UpdateAddressInput` and `CreateAddressInput` to specify the country. */ export type Country = Node & Region & { __typename?: 'Country'; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; enabled: Scalars['Boolean']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; parent?: Maybe; parentId?: Maybe; translations: Array; type: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type CountryFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; enabled?: InputMaybe; id?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; parentId?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; }; export type CountryList = PaginatedList & { __typename?: 'CountryList'; items: Array; totalItems: Scalars['Int']['output']; }; export type CountryListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type CountrySortParameter = { code?: InputMaybe; createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; parentId?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; }; export type CountryTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; /** Returned if the provided coupon code is invalid */ export type CouponCodeExpiredError = ErrorResult & { __typename?: 'CouponCodeExpiredError'; couponCode: Scalars['String']['output']; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned if the provided coupon code is invalid */ export type CouponCodeInvalidError = ErrorResult & { __typename?: 'CouponCodeInvalidError'; couponCode: Scalars['String']['output']; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned if the provided coupon code is invalid */ export type CouponCodeLimitError = ErrorResult & { __typename?: 'CouponCodeLimitError'; couponCode: Scalars['String']['output']; errorCode: ErrorCode; limit: Scalars['Int']['output']; message: Scalars['String']['output']; }; /** * Input used to create an Address. * * The countryCode must correspond to a `code` property of a Country that has been defined in the * Vendure server. The `code` property is typically a 2-character ISO code such as "GB", "US", "DE" etc. * If an invalid code is passed, the mutation will fail. */ export type CreateAddressInput = { city?: InputMaybe; company?: InputMaybe; countryCode: Scalars['String']['input']; customFields?: InputMaybe; defaultBillingAddress?: InputMaybe; defaultShippingAddress?: InputMaybe; fullName?: InputMaybe; phoneNumber?: InputMaybe; postalCode?: InputMaybe; province?: InputMaybe; streetLine1: Scalars['String']['input']; streetLine2?: InputMaybe; }; export type CreateAdministratorInput = { customFields?: InputMaybe; emailAddress: Scalars['String']['input']; firstName: Scalars['String']['input']; lastName: Scalars['String']['input']; password: Scalars['String']['input']; roleIds: Array; }; export type CreateAssetInput = { customFields?: InputMaybe; file: Scalars['Upload']['input']; tags?: InputMaybe>; }; export type CreateAssetResult = Asset | MimeTypeError; export type CreateChannelInput = { availableCurrencyCodes?: InputMaybe>; availableLanguageCodes?: InputMaybe>; code: Scalars['String']['input']; /** @deprecated Use defaultCurrencyCode instead */ currencyCode?: InputMaybe; customFields?: InputMaybe; defaultCurrencyCode?: InputMaybe; defaultLanguageCode: LanguageCode; defaultShippingZoneId: Scalars['ID']['input']; defaultTaxZoneId: Scalars['ID']['input']; outOfStockThreshold?: InputMaybe; pricesIncludeTax: Scalars['Boolean']['input']; sellerId?: InputMaybe; token: Scalars['String']['input']; trackInventory?: InputMaybe; }; export type CreateChannelResult = Channel | LanguageNotAvailableError; export type CreateCollectionInput = { assetIds?: InputMaybe>; customFields?: InputMaybe; featuredAssetId?: InputMaybe; filters: Array; inheritFilters?: InputMaybe; isPrivate?: InputMaybe; parentId?: InputMaybe; translations: Array; }; export type CreateCollectionTranslationInput = { customFields?: InputMaybe; description: Scalars['String']['input']; languageCode: LanguageCode; name: Scalars['String']['input']; slug: Scalars['String']['input']; }; export type CreateCountryInput = { code: Scalars['String']['input']; customFields?: InputMaybe; enabled: Scalars['Boolean']['input']; translations: Array; }; export type CreateCustomerGroupInput = { customFields?: InputMaybe; customerIds?: InputMaybe>; name: Scalars['String']['input']; }; export type CreateCustomerInput = { customFields?: InputMaybe; emailAddress: Scalars['String']['input']; firstName: Scalars['String']['input']; lastName: Scalars['String']['input']; phoneNumber?: InputMaybe; title?: InputMaybe; }; export type CreateCustomerResult = Customer | EmailAddressConflictError; export type CreateFacetInput = { code: Scalars['String']['input']; customFields?: InputMaybe; isPrivate: Scalars['Boolean']['input']; translations: Array; values?: InputMaybe>; }; export type CreateFacetValueInput = { code: Scalars['String']['input']; customFields?: InputMaybe; facetId: Scalars['ID']['input']; translations: Array; }; export type CreateFacetValueWithFacetInput = { code: Scalars['String']['input']; translations: Array; }; /** Returned if an error is thrown in a FulfillmentHandler's createFulfillment method */ export type CreateFulfillmentError = ErrorResult & { __typename?: 'CreateFulfillmentError'; errorCode: ErrorCode; fulfillmentHandlerError: Scalars['String']['output']; message: Scalars['String']['output']; }; export type CreateGroupOptionInput = { code: Scalars['String']['input']; translations: Array; }; export type CreatePaymentMethodInput = { checker?: InputMaybe; code: Scalars['String']['input']; customFields?: InputMaybe; enabled: Scalars['Boolean']['input']; handler: ConfigurableOperationInput; translations: Array; }; export type CreateProductInput = { assetIds?: InputMaybe>; customFields?: InputMaybe; enabled?: InputMaybe; facetValueIds?: InputMaybe>; featuredAssetId?: InputMaybe; translations: Array; }; export type CreateProductOptionGroupInput = { code: Scalars['String']['input']; customFields?: InputMaybe; options: Array; translations: Array; }; export type CreateProductOptionInput = { code: Scalars['String']['input']; customFields?: InputMaybe; productOptionGroupId: Scalars['ID']['input']; translations: Array; }; export type CreateProductVariantInput = { assetIds?: InputMaybe>; customFields?: InputMaybe; enabled?: InputMaybe; facetValueIds?: InputMaybe>; featuredAssetId?: InputMaybe; optionIds?: InputMaybe>; outOfStockThreshold?: InputMaybe; price?: InputMaybe; prices?: InputMaybe>>; productId: Scalars['ID']['input']; sku: Scalars['String']['input']; stockLevels?: InputMaybe>; stockOnHand?: InputMaybe; taxCategoryId?: InputMaybe; trackInventory?: InputMaybe; translations: Array; useGlobalOutOfStockThreshold?: InputMaybe; }; export type CreateProductVariantOptionInput = { code: Scalars['String']['input']; optionGroupId: Scalars['ID']['input']; translations: Array; }; export type CreateProductVariantPriceInput = { currencyCode: CurrencyCode; customFields?: InputMaybe; price: Scalars['Money']['input']; }; export type CreatePromotionInput = { actions: Array; conditions: Array; couponCode?: InputMaybe; customFields?: InputMaybe; enabled: Scalars['Boolean']['input']; endsAt?: InputMaybe; perCustomerUsageLimit?: InputMaybe; startsAt?: InputMaybe; translations: Array; usageLimit?: InputMaybe; }; export type CreatePromotionResult = MissingConditionsError | Promotion; export type CreateProvinceInput = { code: Scalars['String']['input']; customFields?: InputMaybe; enabled: Scalars['Boolean']['input']; translations: Array; }; export type CreateRoleInput = { channelIds?: InputMaybe>; code: Scalars['String']['input']; description: Scalars['String']['input']; permissions: Array; }; export type CreateSellerInput = { customFields?: InputMaybe; name: Scalars['String']['input']; }; export type CreateShippingMethodInput = { calculator: ConfigurableOperationInput; checker: ConfigurableOperationInput; code: Scalars['String']['input']; customFields?: InputMaybe; fulfillmentHandler: Scalars['String']['input']; translations: Array; }; export type CreateStockLocationInput = { customFields?: InputMaybe; description?: InputMaybe; name: Scalars['String']['input']; }; export type CreateTagInput = { value: Scalars['String']['input']; }; export type CreateTaxCategoryInput = { customFields?: InputMaybe; isDefault?: InputMaybe; name: Scalars['String']['input']; }; export type CreateTaxRateInput = { categoryId: Scalars['ID']['input']; customFields?: InputMaybe; customerGroupId?: InputMaybe; enabled: Scalars['Boolean']['input']; name: Scalars['String']['input']; value: Scalars['Float']['input']; zoneId: Scalars['ID']['input']; }; export type CreateZoneInput = { customFields?: InputMaybe; memberIds?: InputMaybe>; name: Scalars['String']['input']; }; /** * @description * ISO 4217 currency code * * @docsCategory common */ export enum CurrencyCode { /** United Arab Emirates dirham */ AED = 'AED', /** Afghan afghani */ AFN = 'AFN', /** Albanian lek */ ALL = 'ALL', /** Armenian dram */ AMD = 'AMD', /** Netherlands Antillean guilder */ ANG = 'ANG', /** Angolan kwanza */ AOA = 'AOA', /** Argentine peso */ ARS = 'ARS', /** Australian dollar */ AUD = 'AUD', /** Aruban florin */ AWG = 'AWG', /** Azerbaijani manat */ AZN = 'AZN', /** Bosnia and Herzegovina convertible mark */ BAM = 'BAM', /** Barbados dollar */ BBD = 'BBD', /** Bangladeshi taka */ BDT = 'BDT', /** Bulgarian lev */ BGN = 'BGN', /** Bahraini dinar */ BHD = 'BHD', /** Burundian franc */ BIF = 'BIF', /** Bermudian dollar */ BMD = 'BMD', /** Brunei dollar */ BND = 'BND', /** Boliviano */ BOB = 'BOB', /** Brazilian real */ BRL = 'BRL', /** Bahamian dollar */ BSD = 'BSD', /** Bhutanese ngultrum */ BTN = 'BTN', /** Botswana pula */ BWP = 'BWP', /** Belarusian ruble */ BYN = 'BYN', /** Belize dollar */ BZD = 'BZD', /** Canadian dollar */ CAD = 'CAD', /** Congolese franc */ CDF = 'CDF', /** Swiss franc */ CHF = 'CHF', /** Chilean peso */ CLP = 'CLP', /** Renminbi (Chinese) yuan */ CNY = 'CNY', /** Colombian peso */ COP = 'COP', /** Costa Rican colon */ CRC = 'CRC', /** Cuban convertible peso */ CUC = 'CUC', /** Cuban peso */ CUP = 'CUP', /** Cape Verde escudo */ CVE = 'CVE', /** Czech koruna */ CZK = 'CZK', /** Djiboutian franc */ DJF = 'DJF', /** Danish krone */ DKK = 'DKK', /** Dominican peso */ DOP = 'DOP', /** Algerian dinar */ DZD = 'DZD', /** Egyptian pound */ EGP = 'EGP', /** Eritrean nakfa */ ERN = 'ERN', /** Ethiopian birr */ ETB = 'ETB', /** Euro */ EUR = 'EUR', /** Fiji dollar */ FJD = 'FJD', /** Falkland Islands pound */ FKP = 'FKP', /** Pound sterling */ GBP = 'GBP', /** Georgian lari */ GEL = 'GEL', /** Ghanaian cedi */ GHS = 'GHS', /** Gibraltar pound */ GIP = 'GIP', /** Gambian dalasi */ GMD = 'GMD', /** Guinean franc */ GNF = 'GNF', /** Guatemalan quetzal */ GTQ = 'GTQ', /** Guyanese dollar */ GYD = 'GYD', /** Hong Kong dollar */ HKD = 'HKD', /** Honduran lempira */ HNL = 'HNL', /** Croatian kuna */ HRK = 'HRK', /** Haitian gourde */ HTG = 'HTG', /** Hungarian forint */ HUF = 'HUF', /** Indonesian rupiah */ IDR = 'IDR', /** Israeli new shekel */ ILS = 'ILS', /** Indian rupee */ INR = 'INR', /** Iraqi dinar */ IQD = 'IQD', /** Iranian rial */ IRR = 'IRR', /** Icelandic króna */ ISK = 'ISK', /** Jamaican dollar */ JMD = 'JMD', /** Jordanian dinar */ JOD = 'JOD', /** Japanese yen */ JPY = 'JPY', /** Kenyan shilling */ KES = 'KES', /** Kyrgyzstani som */ KGS = 'KGS', /** Cambodian riel */ KHR = 'KHR', /** Comoro franc */ KMF = 'KMF', /** North Korean won */ KPW = 'KPW', /** South Korean won */ KRW = 'KRW', /** Kuwaiti dinar */ KWD = 'KWD', /** Cayman Islands dollar */ KYD = 'KYD', /** Kazakhstani tenge */ KZT = 'KZT', /** Lao kip */ LAK = 'LAK', /** Lebanese pound */ LBP = 'LBP', /** Sri Lankan rupee */ LKR = 'LKR', /** Liberian dollar */ LRD = 'LRD', /** Lesotho loti */ LSL = 'LSL', /** Libyan dinar */ LYD = 'LYD', /** Moroccan dirham */ MAD = 'MAD', /** Moldovan leu */ MDL = 'MDL', /** Malagasy ariary */ MGA = 'MGA', /** Macedonian denar */ MKD = 'MKD', /** Myanmar kyat */ MMK = 'MMK', /** Mongolian tögrög */ MNT = 'MNT', /** Macanese pataca */ MOP = 'MOP', /** Mauritanian ouguiya */ MRU = 'MRU', /** Mauritian rupee */ MUR = 'MUR', /** Maldivian rufiyaa */ MVR = 'MVR', /** Malawian kwacha */ MWK = 'MWK', /** Mexican peso */ MXN = 'MXN', /** Malaysian ringgit */ MYR = 'MYR', /** Mozambican metical */ MZN = 'MZN', /** Namibian dollar */ NAD = 'NAD', /** Nigerian naira */ NGN = 'NGN', /** Nicaraguan córdoba */ NIO = 'NIO', /** Norwegian krone */ NOK = 'NOK', /** Nepalese rupee */ NPR = 'NPR', /** New Zealand dollar */ NZD = 'NZD', /** Omani rial */ OMR = 'OMR', /** Panamanian balboa */ PAB = 'PAB', /** Peruvian sol */ PEN = 'PEN', /** Papua New Guinean kina */ PGK = 'PGK', /** Philippine peso */ PHP = 'PHP', /** Pakistani rupee */ PKR = 'PKR', /** Polish złoty */ PLN = 'PLN', /** Paraguayan guaraní */ PYG = 'PYG', /** Qatari riyal */ QAR = 'QAR', /** Romanian leu */ RON = 'RON', /** Serbian dinar */ RSD = 'RSD', /** Russian ruble */ RUB = 'RUB', /** Rwandan franc */ RWF = 'RWF', /** Saudi riyal */ SAR = 'SAR', /** Solomon Islands dollar */ SBD = 'SBD', /** Seychelles rupee */ SCR = 'SCR', /** Sudanese pound */ SDG = 'SDG', /** Swedish krona/kronor */ SEK = 'SEK', /** Singapore dollar */ SGD = 'SGD', /** Saint Helena pound */ SHP = 'SHP', /** Sierra Leonean leone */ SLL = 'SLL', /** Somali shilling */ SOS = 'SOS', /** Surinamese dollar */ SRD = 'SRD', /** South Sudanese pound */ SSP = 'SSP', /** São Tomé and Príncipe dobra */ STN = 'STN', /** Salvadoran colón */ SVC = 'SVC', /** Syrian pound */ SYP = 'SYP', /** Swazi lilangeni */ SZL = 'SZL', /** Thai baht */ THB = 'THB', /** Tajikistani somoni */ TJS = 'TJS', /** Turkmenistan manat */ TMT = 'TMT', /** Tunisian dinar */ TND = 'TND', /** Tongan paʻanga */ TOP = 'TOP', /** Turkish lira */ TRY = 'TRY', /** Trinidad and Tobago dollar */ TTD = 'TTD', /** New Taiwan dollar */ TWD = 'TWD', /** Tanzanian shilling */ TZS = 'TZS', /** Ukrainian hryvnia */ UAH = 'UAH', /** Ugandan shilling */ UGX = 'UGX', /** United States dollar */ USD = 'USD', /** Uruguayan peso */ UYU = 'UYU', /** Uzbekistan som */ UZS = 'UZS', /** Venezuelan bolívar soberano */ VES = 'VES', /** Vietnamese đồng */ VND = 'VND', /** Vanuatu vatu */ VUV = 'VUV', /** Samoan tala */ WST = 'WST', /** CFA franc BEAC */ XAF = 'XAF', /** East Caribbean dollar */ XCD = 'XCD', /** CFA franc BCEAO */ XOF = 'XOF', /** CFP franc (franc Pacifique) */ XPF = 'XPF', /** Yemeni rial */ YER = 'YER', /** South African rand */ ZAR = 'ZAR', /** Zambian kwacha */ ZMW = 'ZMW', /** Zimbabwean dollar */ ZWL = 'ZWL' } export type CurrentUser = { __typename?: 'CurrentUser'; channels: Array; id: Scalars['ID']['output']; identifier: Scalars['String']['output']; }; export type CurrentUserChannel = { __typename?: 'CurrentUserChannel'; code: Scalars['String']['output']; id: Scalars['ID']['output']; permissions: Array; token: Scalars['String']['output']; }; export type CustomField = { description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; export type CustomFieldConfig = BooleanCustomFieldConfig | DateTimeCustomFieldConfig | FloatCustomFieldConfig | IntCustomFieldConfig | LocaleStringCustomFieldConfig | LocaleTextCustomFieldConfig | RelationCustomFieldConfig | StringCustomFieldConfig | StructCustomFieldConfig | TextCustomFieldConfig; /** * This type is deprecated in v2.2 in favor of the EntityCustomFields type, * which allows custom fields to be defined on user-supplied entities. */ export type CustomFields = { __typename?: 'CustomFields'; Address: Array; Administrator: Array; Asset: Array; Channel: Array; Collection: Array; Customer: Array; CustomerGroup: Array; Facet: Array; FacetValue: Array; Fulfillment: Array; GlobalSettings: Array; HistoryEntry: Array; Order: Array; OrderLine: Array; Payment: Array; PaymentMethod: Array; Product: Array; ProductOption: Array; ProductOptionGroup: Array; ProductVariant: Array; ProductVariantPrice: Array; Promotion: Array; Refund: Array; Region: Array; Seller: Array; Session: Array; ShippingLine: Array; ShippingMethod: Array; StockLevel: Array; StockLocation: Array; StockMovement: Array; TaxCategory: Array; TaxRate: Array; User: Array; Zone: Array; }; export type Customer = Node & { __typename?: 'Customer'; addresses?: Maybe>; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; emailAddress: Scalars['String']['output']; firstName: Scalars['String']['output']; groups: Array; history: HistoryEntryList; id: Scalars['ID']['output']; lastName: Scalars['String']['output']; orders: OrderList; phoneNumber?: Maybe; title?: Maybe; updatedAt: Scalars['DateTime']['output']; user?: Maybe; }; export type CustomerHistoryArgs = { options?: InputMaybe; }; export type CustomerOrdersArgs = { options?: InputMaybe; }; export type CustomerFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; id?: InputMaybe; lastName?: InputMaybe; phoneNumber?: InputMaybe; postalCode?: InputMaybe; title?: InputMaybe; updatedAt?: InputMaybe; }; export type CustomerGroup = Node & { __typename?: 'CustomerGroup'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; customers: CustomerList; id: Scalars['ID']['output']; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type CustomerGroupCustomersArgs = { options?: InputMaybe; }; export type CustomerGroupFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type CustomerGroupList = PaginatedList & { __typename?: 'CustomerGroupList'; items: Array; totalItems: Scalars['Int']['output']; }; export type CustomerGroupListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type CustomerGroupSortParameter = { createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type CustomerList = PaginatedList & { __typename?: 'CustomerList'; items: Array; totalItems: Scalars['Int']['output']; }; export type CustomerListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type CustomerSortParameter = { createdAt?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; id?: InputMaybe; lastName?: InputMaybe; phoneNumber?: InputMaybe; title?: InputMaybe; updatedAt?: InputMaybe; }; /** Operators for filtering on a list of Date fields */ export type DateListOperators = { inList: Scalars['DateTime']['input']; }; /** Operators for filtering on a DateTime field */ export type DateOperators = { after?: InputMaybe; before?: InputMaybe; between?: InputMaybe; eq?: InputMaybe; isNull?: InputMaybe; }; export type DateRange = { end: Scalars['DateTime']['input']; start: Scalars['DateTime']['input']; }; /** * Expects the same validation formats as the `` HTML element. * See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime-local#Additional_attributes */ export type DateTimeCustomFieldConfig = CustomField & { __typename?: 'DateTimeCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; max?: Maybe; min?: Maybe; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; step?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; /** * Expects the same validation formats as the `` HTML element. * See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/datetime-local#Additional_attributes */ export type DateTimeStructFieldConfig = StructField & { __typename?: 'DateTimeStructFieldConfig'; description?: Maybe>; label?: Maybe>; list: Scalars['Boolean']['output']; max?: Maybe; min?: Maybe; name: Scalars['String']['output']; step?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; export type DeleteAssetInput = { assetId: Scalars['ID']['input']; deleteFromAllChannels?: InputMaybe; force?: InputMaybe; }; export type DeleteAssetsInput = { assetIds: Array; deleteFromAllChannels?: InputMaybe; force?: InputMaybe; }; export type DeleteStockLocationInput = { id: Scalars['ID']['input']; transferToLocationId?: InputMaybe; }; export type DeletionResponse = { __typename?: 'DeletionResponse'; message?: Maybe; result: DeletionResult; }; export enum DeletionResult { /** The entity was successfully deleted */ DELETED = 'DELETED', /** Deletion did not take place, reason given in message */ NOT_DELETED = 'NOT_DELETED' } export type Discount = { __typename?: 'Discount'; adjustmentSource: Scalars['String']['output']; amount: Scalars['Money']['output']; amountWithTax: Scalars['Money']['output']; description: Scalars['String']['output']; type: AdjustmentType; }; export type DuplicateEntityError = ErrorResult & { __typename?: 'DuplicateEntityError'; duplicationError: Scalars['String']['output']; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type DuplicateEntityInput = { duplicatorInput: ConfigurableOperationInput; entityId: Scalars['ID']['input']; entityName: Scalars['String']['input']; }; export type DuplicateEntityResult = DuplicateEntityError | DuplicateEntitySuccess; export type DuplicateEntitySuccess = { __typename?: 'DuplicateEntitySuccess'; newEntityId: Scalars['ID']['output']; }; /** Returned when attempting to create a Customer with an email address already registered to an existing User. */ export type EmailAddressConflictError = ErrorResult & { __typename?: 'EmailAddressConflictError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned if no OrderLines have been specified for the operation */ export type EmptyOrderLineSelectionError = ErrorResult & { __typename?: 'EmptyOrderLineSelectionError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type EntityCustomFields = { __typename?: 'EntityCustomFields'; customFields: Array; entityName: Scalars['String']['output']; }; export type EntityDuplicatorDefinition = { __typename?: 'EntityDuplicatorDefinition'; args: Array; code: Scalars['String']['output']; description: Scalars['String']['output']; forEntities: Array; requiresPermission: Array; }; export enum ErrorCode { ALREADY_REFUNDED_ERROR = 'ALREADY_REFUNDED_ERROR', CANCEL_ACTIVE_ORDER_ERROR = 'CANCEL_ACTIVE_ORDER_ERROR', CANCEL_PAYMENT_ERROR = 'CANCEL_PAYMENT_ERROR', CHANNEL_DEFAULT_LANGUAGE_ERROR = 'CHANNEL_DEFAULT_LANGUAGE_ERROR', COUPON_CODE_EXPIRED_ERROR = 'COUPON_CODE_EXPIRED_ERROR', COUPON_CODE_INVALID_ERROR = 'COUPON_CODE_INVALID_ERROR', COUPON_CODE_LIMIT_ERROR = 'COUPON_CODE_LIMIT_ERROR', CREATE_FULFILLMENT_ERROR = 'CREATE_FULFILLMENT_ERROR', DUPLICATE_ENTITY_ERROR = 'DUPLICATE_ENTITY_ERROR', EMAIL_ADDRESS_CONFLICT_ERROR = 'EMAIL_ADDRESS_CONFLICT_ERROR', EMPTY_ORDER_LINE_SELECTION_ERROR = 'EMPTY_ORDER_LINE_SELECTION_ERROR', FACET_IN_USE_ERROR = 'FACET_IN_USE_ERROR', FULFILLMENT_STATE_TRANSITION_ERROR = 'FULFILLMENT_STATE_TRANSITION_ERROR', GUEST_CHECKOUT_ERROR = 'GUEST_CHECKOUT_ERROR', INELIGIBLE_SHIPPING_METHOD_ERROR = 'INELIGIBLE_SHIPPING_METHOD_ERROR', INSUFFICIENT_STOCK_ERROR = 'INSUFFICIENT_STOCK_ERROR', INSUFFICIENT_STOCK_ON_HAND_ERROR = 'INSUFFICIENT_STOCK_ON_HAND_ERROR', INVALID_CREDENTIALS_ERROR = 'INVALID_CREDENTIALS_ERROR', INVALID_FULFILLMENT_HANDLER_ERROR = 'INVALID_FULFILLMENT_HANDLER_ERROR', ITEMS_ALREADY_FULFILLED_ERROR = 'ITEMS_ALREADY_FULFILLED_ERROR', LANGUAGE_NOT_AVAILABLE_ERROR = 'LANGUAGE_NOT_AVAILABLE_ERROR', MANUAL_PAYMENT_STATE_ERROR = 'MANUAL_PAYMENT_STATE_ERROR', MIME_TYPE_ERROR = 'MIME_TYPE_ERROR', MISSING_CONDITIONS_ERROR = 'MISSING_CONDITIONS_ERROR', MULTIPLE_ORDER_ERROR = 'MULTIPLE_ORDER_ERROR', NATIVE_AUTH_STRATEGY_ERROR = 'NATIVE_AUTH_STRATEGY_ERROR', NEGATIVE_QUANTITY_ERROR = 'NEGATIVE_QUANTITY_ERROR', NOTHING_TO_REFUND_ERROR = 'NOTHING_TO_REFUND_ERROR', NO_ACTIVE_ORDER_ERROR = 'NO_ACTIVE_ORDER_ERROR', NO_CHANGES_SPECIFIED_ERROR = 'NO_CHANGES_SPECIFIED_ERROR', ORDER_INTERCEPTOR_ERROR = 'ORDER_INTERCEPTOR_ERROR', ORDER_LIMIT_ERROR = 'ORDER_LIMIT_ERROR', ORDER_MODIFICATION_ERROR = 'ORDER_MODIFICATION_ERROR', ORDER_MODIFICATION_STATE_ERROR = 'ORDER_MODIFICATION_STATE_ERROR', ORDER_STATE_TRANSITION_ERROR = 'ORDER_STATE_TRANSITION_ERROR', PAYMENT_METHOD_MISSING_ERROR = 'PAYMENT_METHOD_MISSING_ERROR', PAYMENT_ORDER_MISMATCH_ERROR = 'PAYMENT_ORDER_MISMATCH_ERROR', PAYMENT_STATE_TRANSITION_ERROR = 'PAYMENT_STATE_TRANSITION_ERROR', PRODUCT_OPTION_IN_USE_ERROR = 'PRODUCT_OPTION_IN_USE_ERROR', QUANTITY_TOO_GREAT_ERROR = 'QUANTITY_TOO_GREAT_ERROR', REFUND_AMOUNT_ERROR = 'REFUND_AMOUNT_ERROR', REFUND_ORDER_STATE_ERROR = 'REFUND_ORDER_STATE_ERROR', REFUND_PAYMENT_ID_MISSING_ERROR = 'REFUND_PAYMENT_ID_MISSING_ERROR', REFUND_STATE_TRANSITION_ERROR = 'REFUND_STATE_TRANSITION_ERROR', SETTLE_PAYMENT_ERROR = 'SETTLE_PAYMENT_ERROR', UNKNOWN_ERROR = 'UNKNOWN_ERROR' } export type ErrorResult = { errorCode: ErrorCode; message: Scalars['String']['output']; }; export type Facet = Node & { __typename?: 'Facet'; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; isPrivate: Scalars['Boolean']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; /** Returns a paginated, sortable, filterable list of the Facet's values. Added in v2.1.0. */ valueList: FacetValueList; values: Array; }; export type FacetValueListArgs = { options?: InputMaybe; }; export type FacetFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; id?: InputMaybe; isPrivate?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type FacetInUseError = ErrorResult & { __typename?: 'FacetInUseError'; errorCode: ErrorCode; facetCode: Scalars['String']['output']; message: Scalars['String']['output']; productCount: Scalars['Int']['output']; variantCount: Scalars['Int']['output']; }; export type FacetList = PaginatedList & { __typename?: 'FacetList'; items: Array; totalItems: Scalars['Int']['output']; }; export type FacetListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type FacetSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type FacetTranslation = { __typename?: 'FacetTranslation'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type FacetTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; export type FacetValue = Node & { __typename?: 'FacetValue'; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; facet: Facet; facetId: Scalars['ID']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; }; /** * Used to construct boolean expressions for filtering search results * by FacetValue ID. Examples: * * * ID=1 OR ID=2: `{ facetValueFilters: [{ or: [1,2] }] }` * * ID=1 AND ID=2: `{ facetValueFilters: [{ and: 1 }, { and: 2 }] }` * * ID=1 AND (ID=2 OR ID=3): `{ facetValueFilters: [{ and: 1 }, { or: [2,3] }] }` */ export type FacetValueFilterInput = { and?: InputMaybe; or?: InputMaybe>; }; export type FacetValueFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; facetId?: InputMaybe; id?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type FacetValueList = PaginatedList & { __typename?: 'FacetValueList'; items: Array; totalItems: Scalars['Int']['output']; }; export type FacetValueListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; /** * Which FacetValues are present in the products returned * by the search, and in what quantity. */ export type FacetValueResult = { __typename?: 'FacetValueResult'; count: Scalars['Int']['output']; facetValue: FacetValue; }; export type FacetValueSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; facetId?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type FacetValueTranslation = { __typename?: 'FacetValueTranslation'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type FacetValueTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; export type FloatCustomFieldConfig = CustomField & { __typename?: 'FloatCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; max?: Maybe; min?: Maybe; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; step?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; export type FloatStructFieldConfig = StructField & { __typename?: 'FloatStructFieldConfig'; description?: Maybe>; label?: Maybe>; list: Scalars['Boolean']['output']; max?: Maybe; min?: Maybe; name: Scalars['String']['output']; step?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; export type FulfillOrderInput = { handler: ConfigurableOperationInput; lines: Array; }; export type Fulfillment = Node & { __typename?: 'Fulfillment'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; lines: Array; method: Scalars['String']['output']; nextStates: Array; state: Scalars['String']['output']; /** @deprecated Use the `lines` field instead */ summary: Array; trackingCode?: Maybe; updatedAt: Scalars['DateTime']['output']; }; export type FulfillmentLine = { __typename?: 'FulfillmentLine'; fulfillment: Fulfillment; fulfillmentId: Scalars['ID']['output']; orderLine: OrderLine; orderLineId: Scalars['ID']['output']; quantity: Scalars['Int']['output']; }; /** Returned when there is an error in transitioning the Fulfillment state */ export type FulfillmentStateTransitionError = ErrorResult & { __typename?: 'FulfillmentStateTransitionError'; errorCode: ErrorCode; fromState: Scalars['String']['output']; message: Scalars['String']['output']; toState: Scalars['String']['output']; transitionError: Scalars['String']['output']; }; export enum GlobalFlag { FALSE = 'FALSE', INHERIT = 'INHERIT', TRUE = 'TRUE' } export type GlobalSettings = { __typename?: 'GlobalSettings'; availableLanguages: Array; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; outOfStockThreshold: Scalars['Int']['output']; serverConfig: ServerConfig; trackInventory: Scalars['Boolean']['output']; updatedAt: Scalars['DateTime']['output']; }; /** Returned when attempting to set the Customer on a guest checkout when the configured GuestCheckoutStrategy does not allow it. */ export type GuestCheckoutError = ErrorResult & { __typename?: 'GuestCheckoutError'; errorCode: ErrorCode; errorDetail: Scalars['String']['output']; message: Scalars['String']['output']; }; export type HistoryEntry = Node & { __typename?: 'HistoryEntry'; administrator?: Maybe; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; data: Scalars['JSON']['output']; id: Scalars['ID']['output']; isPublic: Scalars['Boolean']['output']; type: HistoryEntryType; updatedAt: Scalars['DateTime']['output']; }; export type HistoryEntryFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; id?: InputMaybe; isPublic?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; }; export type HistoryEntryList = PaginatedList & { __typename?: 'HistoryEntryList'; items: Array; totalItems: Scalars['Int']['output']; }; export type HistoryEntryListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type HistoryEntrySortParameter = { createdAt?: InputMaybe; id?: InputMaybe; updatedAt?: InputMaybe; }; export enum HistoryEntryType { CUSTOMER_ADDED_TO_GROUP = 'CUSTOMER_ADDED_TO_GROUP', CUSTOMER_ADDRESS_CREATED = 'CUSTOMER_ADDRESS_CREATED', CUSTOMER_ADDRESS_DELETED = 'CUSTOMER_ADDRESS_DELETED', CUSTOMER_ADDRESS_UPDATED = 'CUSTOMER_ADDRESS_UPDATED', CUSTOMER_DETAIL_UPDATED = 'CUSTOMER_DETAIL_UPDATED', CUSTOMER_EMAIL_UPDATE_REQUESTED = 'CUSTOMER_EMAIL_UPDATE_REQUESTED', CUSTOMER_EMAIL_UPDATE_VERIFIED = 'CUSTOMER_EMAIL_UPDATE_VERIFIED', CUSTOMER_NOTE = 'CUSTOMER_NOTE', CUSTOMER_PASSWORD_RESET_REQUESTED = 'CUSTOMER_PASSWORD_RESET_REQUESTED', CUSTOMER_PASSWORD_RESET_VERIFIED = 'CUSTOMER_PASSWORD_RESET_VERIFIED', CUSTOMER_PASSWORD_UPDATED = 'CUSTOMER_PASSWORD_UPDATED', CUSTOMER_REGISTERED = 'CUSTOMER_REGISTERED', CUSTOMER_REMOVED_FROM_GROUP = 'CUSTOMER_REMOVED_FROM_GROUP', CUSTOMER_VERIFIED = 'CUSTOMER_VERIFIED', ORDER_CANCELLATION = 'ORDER_CANCELLATION', ORDER_COUPON_APPLIED = 'ORDER_COUPON_APPLIED', ORDER_COUPON_REMOVED = 'ORDER_COUPON_REMOVED', ORDER_CUSTOMER_UPDATED = 'ORDER_CUSTOMER_UPDATED', ORDER_FULFILLMENT = 'ORDER_FULFILLMENT', ORDER_FULFILLMENT_TRANSITION = 'ORDER_FULFILLMENT_TRANSITION', ORDER_MODIFIED = 'ORDER_MODIFIED', ORDER_NOTE = 'ORDER_NOTE', ORDER_PAYMENT_TRANSITION = 'ORDER_PAYMENT_TRANSITION', ORDER_REFUND_TRANSITION = 'ORDER_REFUND_TRANSITION', ORDER_STATE_TRANSITION = 'ORDER_STATE_TRANSITION' } /** Operators for filtering on a list of ID fields */ export type IdListOperators = { inList: Scalars['ID']['input']; }; /** Operators for filtering on an ID field */ export type IdOperators = { eq?: InputMaybe; in?: InputMaybe>; isNull?: InputMaybe; notEq?: InputMaybe; notIn?: InputMaybe>; }; export type ImportInfo = { __typename?: 'ImportInfo'; errors?: Maybe>; imported: Scalars['Int']['output']; processed: Scalars['Int']['output']; }; /** Returned when attempting to set a ShippingMethod for which the Order is not eligible */ export type IneligibleShippingMethodError = ErrorResult & { __typename?: 'IneligibleShippingMethodError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned when attempting to add more items to the Order than are available */ export type InsufficientStockError = ErrorResult & { __typename?: 'InsufficientStockError'; errorCode: ErrorCode; message: Scalars['String']['output']; order: Order; quantityAvailable: Scalars['Int']['output']; }; /** * Returned if attempting to create a Fulfillment when there is insufficient * stockOnHand of a ProductVariant to satisfy the requested quantity. */ export type InsufficientStockOnHandError = ErrorResult & { __typename?: 'InsufficientStockOnHandError'; errorCode: ErrorCode; message: Scalars['String']['output']; productVariantId: Scalars['ID']['output']; productVariantName: Scalars['String']['output']; stockOnHand: Scalars['Int']['output']; }; export type IntCustomFieldConfig = CustomField & { __typename?: 'IntCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; max?: Maybe; min?: Maybe; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; step?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; export type IntStructFieldConfig = StructField & { __typename?: 'IntStructFieldConfig'; description?: Maybe>; label?: Maybe>; list: Scalars['Boolean']['output']; max?: Maybe; min?: Maybe; name: Scalars['String']['output']; step?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; /** Returned if the user authentication credentials are not valid */ export type InvalidCredentialsError = ErrorResult & { __typename?: 'InvalidCredentialsError'; authenticationError: Scalars['String']['output']; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned if the specified FulfillmentHandler code is not valid */ export type InvalidFulfillmentHandlerError = ErrorResult & { __typename?: 'InvalidFulfillmentHandlerError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned if the specified items are already part of a Fulfillment */ export type ItemsAlreadyFulfilledError = ErrorResult & { __typename?: 'ItemsAlreadyFulfilledError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type Job = Node & { __typename?: 'Job'; attempts: Scalars['Int']['output']; createdAt: Scalars['DateTime']['output']; data?: Maybe; duration: Scalars['Int']['output']; error?: Maybe; id: Scalars['ID']['output']; isSettled: Scalars['Boolean']['output']; progress: Scalars['Float']['output']; queueName: Scalars['String']['output']; result?: Maybe; retries: Scalars['Int']['output']; settledAt?: Maybe; startedAt?: Maybe; state: JobState; }; export type JobBufferSize = { __typename?: 'JobBufferSize'; bufferId: Scalars['String']['output']; size: Scalars['Int']['output']; }; export type JobFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; attempts?: InputMaybe; createdAt?: InputMaybe; duration?: InputMaybe; id?: InputMaybe; isSettled?: InputMaybe; progress?: InputMaybe; queueName?: InputMaybe; retries?: InputMaybe; settledAt?: InputMaybe; startedAt?: InputMaybe; state?: InputMaybe; }; export type JobList = PaginatedList & { __typename?: 'JobList'; items: Array; totalItems: Scalars['Int']['output']; }; export type JobListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type JobQueue = { __typename?: 'JobQueue'; name: Scalars['String']['output']; running: Scalars['Boolean']['output']; }; export type JobSortParameter = { attempts?: InputMaybe; createdAt?: InputMaybe; duration?: InputMaybe; id?: InputMaybe; progress?: InputMaybe; queueName?: InputMaybe; retries?: InputMaybe; settledAt?: InputMaybe; startedAt?: InputMaybe; }; /** * @description * The state of a Job in the JobQueue * * @docsCategory common */ export enum JobState { CANCELLED = 'CANCELLED', COMPLETED = 'COMPLETED', FAILED = 'FAILED', PENDING = 'PENDING', RETRYING = 'RETRYING', RUNNING = 'RUNNING' } /** * @description * Languages in the form of a ISO 639-1 language code with optional * region or script modifier (e.g. de_AT). The selection available is based * on the [Unicode CLDR summary list](https://unicode-org.github.io/cldr-staging/charts/37/summary/root.html) * and includes the major spoken languages of the world and any widely-used variants. * * @docsCategory common */ export enum LanguageCode { /** Afrikaans */ af = 'af', /** Akan */ ak = 'ak', /** Amharic */ am = 'am', /** Arabic */ ar = 'ar', /** Assamese */ as = 'as', /** Azerbaijani */ az = 'az', /** Belarusian */ be = 'be', /** Bulgarian */ bg = 'bg', /** Bambara */ bm = 'bm', /** Bangla */ bn = 'bn', /** Tibetan */ bo = 'bo', /** Breton */ br = 'br', /** Bosnian */ bs = 'bs', /** Catalan */ ca = 'ca', /** Chechen */ ce = 'ce', /** Corsican */ co = 'co', /** Czech */ cs = 'cs', /** Church Slavic */ cu = 'cu', /** Welsh */ cy = 'cy', /** Danish */ da = 'da', /** German */ de = 'de', /** Austrian German */ de_AT = 'de_AT', /** Swiss High German */ de_CH = 'de_CH', /** Dzongkha */ dz = 'dz', /** Ewe */ ee = 'ee', /** Greek */ el = 'el', /** English */ en = 'en', /** Australian English */ en_AU = 'en_AU', /** Canadian English */ en_CA = 'en_CA', /** British English */ en_GB = 'en_GB', /** American English */ en_US = 'en_US', /** Esperanto */ eo = 'eo', /** Spanish */ es = 'es', /** European Spanish */ es_ES = 'es_ES', /** Mexican Spanish */ es_MX = 'es_MX', /** Estonian */ et = 'et', /** Basque */ eu = 'eu', /** Persian */ fa = 'fa', /** Dari */ fa_AF = 'fa_AF', /** Fulah */ ff = 'ff', /** Finnish */ fi = 'fi', /** Faroese */ fo = 'fo', /** French */ fr = 'fr', /** Canadian French */ fr_CA = 'fr_CA', /** Swiss French */ fr_CH = 'fr_CH', /** Western Frisian */ fy = 'fy', /** Irish */ ga = 'ga', /** Scottish Gaelic */ gd = 'gd', /** Galician */ gl = 'gl', /** Gujarati */ gu = 'gu', /** Manx */ gv = 'gv', /** Hausa */ ha = 'ha', /** Hebrew */ he = 'he', /** Hindi */ hi = 'hi', /** Croatian */ hr = 'hr', /** Haitian Creole */ ht = 'ht', /** Hungarian */ hu = 'hu', /** Armenian */ hy = 'hy', /** Interlingua */ ia = 'ia', /** Indonesian */ id = 'id', /** Igbo */ ig = 'ig', /** Sichuan Yi */ ii = 'ii', /** Icelandic */ is = 'is', /** Italian */ it = 'it', /** Japanese */ ja = 'ja', /** Javanese */ jv = 'jv', /** Georgian */ ka = 'ka', /** Kikuyu */ ki = 'ki', /** Kazakh */ kk = 'kk', /** Kalaallisut */ kl = 'kl', /** Khmer */ km = 'km', /** Kannada */ kn = 'kn', /** Korean */ ko = 'ko', /** Kashmiri */ ks = 'ks', /** Kurdish */ ku = 'ku', /** Cornish */ kw = 'kw', /** Kyrgyz */ ky = 'ky', /** Latin */ la = 'la', /** Luxembourgish */ lb = 'lb', /** Ganda */ lg = 'lg', /** Lingala */ ln = 'ln', /** Lao */ lo = 'lo', /** Lithuanian */ lt = 'lt', /** Luba-Katanga */ lu = 'lu', /** Latvian */ lv = 'lv', /** Malagasy */ mg = 'mg', /** Maori */ mi = 'mi', /** Macedonian */ mk = 'mk', /** Malayalam */ ml = 'ml', /** Mongolian */ mn = 'mn', /** Marathi */ mr = 'mr', /** Malay */ ms = 'ms', /** Maltese */ mt = 'mt', /** Burmese */ my = 'my', /** Norwegian Bokmål */ nb = 'nb', /** North Ndebele */ nd = 'nd', /** Nepali */ ne = 'ne', /** Dutch */ nl = 'nl', /** Flemish */ nl_BE = 'nl_BE', /** Norwegian Nynorsk */ nn = 'nn', /** Nyanja */ ny = 'ny', /** Oromo */ om = 'om', /** Odia */ or = 'or', /** Ossetic */ os = 'os', /** Punjabi */ pa = 'pa', /** Polish */ pl = 'pl', /** Pashto */ ps = 'ps', /** Portuguese */ pt = 'pt', /** Brazilian Portuguese */ pt_BR = 'pt_BR', /** European Portuguese */ pt_PT = 'pt_PT', /** Quechua */ qu = 'qu', /** Romansh */ rm = 'rm', /** Rundi */ rn = 'rn', /** Romanian */ ro = 'ro', /** Moldavian */ ro_MD = 'ro_MD', /** Russian */ ru = 'ru', /** Kinyarwanda */ rw = 'rw', /** Sanskrit */ sa = 'sa', /** Sindhi */ sd = 'sd', /** Northern Sami */ se = 'se', /** Sango */ sg = 'sg', /** Sinhala */ si = 'si', /** Slovak */ sk = 'sk', /** Slovenian */ sl = 'sl', /** Samoan */ sm = 'sm', /** Shona */ sn = 'sn', /** Somali */ so = 'so', /** Albanian */ sq = 'sq', /** Serbian */ sr = 'sr', /** Southern Sotho */ st = 'st', /** Sundanese */ su = 'su', /** Swedish */ sv = 'sv', /** Swahili */ sw = 'sw', /** Congo Swahili */ sw_CD = 'sw_CD', /** Tamil */ ta = 'ta', /** Telugu */ te = 'te', /** Tajik */ tg = 'tg', /** Thai */ th = 'th', /** Tigrinya */ ti = 'ti', /** Turkmen */ tk = 'tk', /** Tongan */ to = 'to', /** Turkish */ tr = 'tr', /** Tatar */ tt = 'tt', /** Uyghur */ ug = 'ug', /** Ukrainian */ uk = 'uk', /** Urdu */ ur = 'ur', /** Uzbek */ uz = 'uz', /** Vietnamese */ vi = 'vi', /** Volapük */ vo = 'vo', /** Wolof */ wo = 'wo', /** Xhosa */ xh = 'xh', /** Yiddish */ yi = 'yi', /** Yoruba */ yo = 'yo', /** Chinese */ zh = 'zh', /** Simplified Chinese */ zh_Hans = 'zh_Hans', /** Traditional Chinese */ zh_Hant = 'zh_Hant', /** Zulu */ zu = 'zu' } /** Returned if attempting to set a Channel's defaultLanguageCode to a language which is not enabled in GlobalSettings */ export type LanguageNotAvailableError = ErrorResult & { __typename?: 'LanguageNotAvailableError'; errorCode: ErrorCode; languageCode: Scalars['String']['output']; message: Scalars['String']['output']; }; export type LocaleStringCustomFieldConfig = CustomField & { __typename?: 'LocaleStringCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; length?: Maybe; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; pattern?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; export type LocaleTextCustomFieldConfig = CustomField & { __typename?: 'LocaleTextCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; export type LocalizedString = { __typename?: 'LocalizedString'; languageCode: LanguageCode; value: Scalars['String']['output']; }; export enum LogicalOperator { AND = 'AND', OR = 'OR' } export type ManualPaymentInput = { metadata?: InputMaybe; method: Scalars['String']['input']; orderId: Scalars['ID']['input']; transactionId?: InputMaybe; }; /** * Returned when a call to addManualPaymentToOrder is made but the Order * is not in the required state. */ export type ManualPaymentStateError = ErrorResult & { __typename?: 'ManualPaymentStateError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export enum MetricInterval { Daily = 'Daily' } export type MetricSummary = { __typename?: 'MetricSummary'; entries: Array; interval: MetricInterval; title: Scalars['String']['output']; type: MetricType; }; export type MetricSummaryEntry = { __typename?: 'MetricSummaryEntry'; label: Scalars['String']['output']; value: Scalars['Float']['output']; }; export type MetricSummaryInput = { interval: MetricInterval; refresh?: InputMaybe; types: Array; }; export enum MetricType { AverageOrderValue = 'AverageOrderValue', OrderCount = 'OrderCount', OrderTotal = 'OrderTotal' } export type MimeTypeError = ErrorResult & { __typename?: 'MimeTypeError'; errorCode: ErrorCode; fileName: Scalars['String']['output']; message: Scalars['String']['output']; mimeType: Scalars['String']['output']; }; /** Returned if a PromotionCondition has neither a couponCode nor any conditions set */ export type MissingConditionsError = ErrorResult & { __typename?: 'MissingConditionsError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type ModifyOrderInput = { addItems?: InputMaybe>; adjustOrderLines?: InputMaybe>; couponCodes?: InputMaybe>; dryRun: Scalars['Boolean']['input']; note?: InputMaybe; options?: InputMaybe; orderId: Scalars['ID']['input']; /** * Deprecated in v2.2.0. Use `refunds` instead to allow multiple refunds to be * applied in the case that multiple payment methods have been used on the order. */ refund?: InputMaybe; refunds?: InputMaybe>; /** Added in v2.2 */ shippingMethodIds?: InputMaybe>; surcharges?: InputMaybe>; updateBillingAddress?: InputMaybe; updateShippingAddress?: InputMaybe; }; export type ModifyOrderOptions = { freezePromotions?: InputMaybe; recalculateShipping?: InputMaybe; }; export type ModifyOrderResult = CouponCodeExpiredError | CouponCodeInvalidError | CouponCodeLimitError | IneligibleShippingMethodError | InsufficientStockError | NegativeQuantityError | NoChangesSpecifiedError | Order | OrderLimitError | OrderModificationStateError | PaymentMethodMissingError | RefundPaymentIdMissingError; export type MoveCollectionInput = { collectionId: Scalars['ID']['input']; index: Scalars['Int']['input']; parentId: Scalars['ID']['input']; }; /** Returned if an operation has specified OrderLines from multiple Orders */ export type MultipleOrderError = ErrorResult & { __typename?: 'MultipleOrderError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type Mutation = { __typename?: 'Mutation'; /** Add Customers to a CustomerGroup */ addCustomersToGroup: CustomerGroup; addFulfillmentToOrder: AddFulfillmentToOrderResult; /** Adds an item to the draft Order. */ addItemToDraftOrder: UpdateOrderItemsResult; /** * Used to manually create a new Payment against an Order. * This can be used by an Administrator when an Order is in the ArrangingPayment state. * * It is also used when a completed Order * has been modified (using `modifyOrder`) and the price has increased. The extra payment * can then be manually arranged by the administrator, and the details used to create a new * Payment. */ addManualPaymentToOrder: AddManualPaymentToOrderResult; /** Add members to a Zone */ addMembersToZone: Zone; addNoteToCustomer: Customer; addNoteToOrder: Order; /** Add an OptionGroup to a Product */ addOptionGroupToProduct: Product; /** Adjusts a draft OrderLine. If custom fields are defined on the OrderLine entity, a third argument 'customFields' of type `OrderLineCustomFieldsInput` will be available. */ adjustDraftOrderLine: UpdateOrderItemsResult; /** Applies the given coupon code to the draft Order */ applyCouponCodeToDraftOrder: ApplyCouponCodeResult; /** Assign assets to channel */ assignAssetsToChannel: Array; /** Assigns Collections to the specified Channel */ assignCollectionsToChannel: Array; /** Assigns Facets to the specified Channel */ assignFacetsToChannel: Array; /** Assigns PaymentMethods to the specified Channel */ assignPaymentMethodsToChannel: Array; /** Assigns ProductVariants to the specified Channel */ assignProductVariantsToChannel: Array; /** Assigns all ProductVariants of Product to the specified Channel */ assignProductsToChannel: Array; /** Assigns Promotions to the specified Channel */ assignPromotionsToChannel: Array; /** Assign a Role to an Administrator */ assignRoleToAdministrator: Administrator; /** Assigns ShippingMethods to the specified Channel */ assignShippingMethodsToChannel: Array; /** Assigns StockLocations to the specified Channel */ assignStockLocationsToChannel: Array; /** Authenticates the user using a named authentication strategy */ authenticate: AuthenticationResult; cancelJob: Job; cancelOrder: CancelOrderResult; cancelPayment: CancelPaymentResult; /** Create a new Administrator */ createAdministrator: Administrator; /** Create a new Asset */ createAssets: Array; /** Create a new Channel */ createChannel: CreateChannelResult; /** Create a new Collection */ createCollection: Collection; /** Create a new Country */ createCountry: Country; /** Create a new Customer. If a password is provided, a new User will also be created an linked to the Customer. */ createCustomer: CreateCustomerResult; /** Create a new Address and associate it with the Customer specified by customerId */ createCustomerAddress: Address; /** Create a new CustomerGroup */ createCustomerGroup: CustomerGroup; /** Creates a draft Order */ createDraftOrder: Order; /** Create a new Facet */ createFacet: Facet; /** Create one or more FacetValues */ createFacetValues: Array; /** Create existing PaymentMethod */ createPaymentMethod: PaymentMethod; /** Create a new Product */ createProduct: Product; /** Create a new ProductOption within a ProductOptionGroup */ createProductOption: ProductOption; /** Create a new ProductOptionGroup */ createProductOptionGroup: ProductOptionGroup; /** Create a set of ProductVariants based on the OptionGroups assigned to the given Product */ createProductVariants: Array>; createPromotion: CreatePromotionResult; /** Create a new Province */ createProvince: Province; /** Create a new Role */ createRole: Role; /** Create a new Seller */ createSeller: Seller; /** Create a new ShippingMethod */ createShippingMethod: ShippingMethod; createStockLocation: StockLocation; /** Create a new Tag */ createTag: Tag; /** Create a new TaxCategory */ createTaxCategory: TaxCategory; /** Create a new TaxRate */ createTaxRate: TaxRate; /** Create a new Zone */ createZone: Zone; /** Delete an Administrator */ deleteAdministrator: DeletionResponse; /** Delete multiple Administrators */ deleteAdministrators: Array; /** Delete an Asset */ deleteAsset: DeletionResponse; /** Delete multiple Assets */ deleteAssets: DeletionResponse; /** Delete a Channel */ deleteChannel: DeletionResponse; /** Delete multiple Channels */ deleteChannels: Array; /** Delete a Collection and all of its descendants */ deleteCollection: DeletionResponse; /** Delete multiple Collections and all of their descendants */ deleteCollections: Array; /** Delete multiple Countries */ deleteCountries: Array; /** Delete a Country */ deleteCountry: DeletionResponse; /** Delete a Customer */ deleteCustomer: DeletionResponse; /** Update an existing Address */ deleteCustomerAddress: Success; /** Delete a CustomerGroup */ deleteCustomerGroup: DeletionResponse; /** Delete multiple CustomerGroups */ deleteCustomerGroups: Array; deleteCustomerNote: DeletionResponse; /** Deletes Customers */ deleteCustomers: Array; /** Deletes a draft Order */ deleteDraftOrder: DeletionResponse; /** Delete an existing Facet */ deleteFacet: DeletionResponse; /** Delete one or more FacetValues */ deleteFacetValues: Array; /** Delete multiple existing Facets */ deleteFacets: Array; deleteOrderNote: DeletionResponse; /** Delete a PaymentMethod */ deletePaymentMethod: DeletionResponse; /** Delete multiple PaymentMethods */ deletePaymentMethods: Array; /** Delete a Product */ deleteProduct: DeletionResponse; /** Delete a ProductOption */ deleteProductOption: DeletionResponse; /** Delete a ProductVariant */ deleteProductVariant: DeletionResponse; /** Delete multiple ProductVariants */ deleteProductVariants: Array; /** Delete multiple Products */ deleteProducts: Array; deletePromotion: DeletionResponse; deletePromotions: Array; /** Delete a Province */ deleteProvince: DeletionResponse; /** Delete an existing Role */ deleteRole: DeletionResponse; /** Delete multiple Roles */ deleteRoles: Array; /** Delete a Seller */ deleteSeller: DeletionResponse; /** Delete multiple Sellers */ deleteSellers: Array; /** Delete a ShippingMethod */ deleteShippingMethod: DeletionResponse; /** Delete multiple ShippingMethods */ deleteShippingMethods: Array; deleteStockLocation: DeletionResponse; deleteStockLocations: Array; /** Delete an existing Tag */ deleteTag: DeletionResponse; /** Deletes multiple TaxCategories */ deleteTaxCategories: Array; /** Deletes a TaxCategory */ deleteTaxCategory: DeletionResponse; /** Delete a TaxRate */ deleteTaxRate: DeletionResponse; /** Delete multiple TaxRates */ deleteTaxRates: Array; /** Delete a Zone */ deleteZone: DeletionResponse; /** Delete a Zone */ deleteZones: Array; /** * Duplicate an existing entity using a specific EntityDuplicator. * Since v2.2.0. */ duplicateEntity: DuplicateEntityResult; flushBufferedJobs: Success; importProducts?: Maybe; /** * Authenticates the user using the native authentication strategy. This mutation is an alias for authenticate({ native: { ... }}) * * The `rememberMe` option applies when using cookie-based sessions, and if `true` it will set the maxAge of the session cookie * to 1 year. */ login: NativeAuthenticationResult; logout: Success; /** * Allows an Order to be modified after it has been completed by the Customer. The Order must first * be in the `Modifying` state. */ modifyOrder: ModifyOrderResult; /** Move a Collection to a different parent or index */ moveCollection: Collection; refundOrder: RefundOrderResult; reindex: Job; /** Removes Collections from the specified Channel */ removeCollectionsFromChannel: Array; /** Removes the given coupon code from the draft Order */ removeCouponCodeFromDraftOrder?: Maybe; /** Remove Customers from a CustomerGroup */ removeCustomersFromGroup: CustomerGroup; /** Remove an OrderLine from the draft Order */ removeDraftOrderLine: RemoveOrderItemsResult; /** Removes Facets from the specified Channel */ removeFacetsFromChannel: Array; /** Remove members from a Zone */ removeMembersFromZone: Zone; /** * Remove an OptionGroup from a Product. If the OptionGroup is in use by any ProductVariants * the mutation will return a ProductOptionInUseError, and the OptionGroup will not be removed. * Setting the `force` argument to `true` will override this and remove the OptionGroup anyway, * as well as removing any of the group's options from the Product's ProductVariants. */ removeOptionGroupFromProduct: RemoveOptionGroupFromProductResult; /** Removes PaymentMethods from the specified Channel */ removePaymentMethodsFromChannel: Array; /** Removes ProductVariants from the specified Channel */ removeProductVariantsFromChannel: Array; /** Removes all ProductVariants of Product from the specified Channel */ removeProductsFromChannel: Array; /** Removes Promotions from the specified Channel */ removePromotionsFromChannel: Array; /** Remove all settled jobs in the given queues older than the given date. Returns the number of jobs deleted. */ removeSettledJobs: Scalars['Int']['output']; /** Removes ShippingMethods from the specified Channel */ removeShippingMethodsFromChannel: Array; /** Removes StockLocations from the specified Channel */ removeStockLocationsFromChannel: Array; runPendingSearchIndexUpdates: Success; runScheduledTask: Success; setCustomerForDraftOrder: SetCustomerForDraftOrderResult; /** Sets the billing address for a draft Order */ setDraftOrderBillingAddress: Order; /** Allows any custom fields to be set for the active order */ setDraftOrderCustomFields: Order; /** Sets the shipping address for a draft Order */ setDraftOrderShippingAddress: Order; /** Sets the shipping method by id, which can be obtained with the `eligibleShippingMethodsForDraftOrder` query */ setDraftOrderShippingMethod: SetOrderShippingMethodResult; setOrderCustomFields?: Maybe; /** Allows a different Customer to be assigned to an Order. Added in v2.2.0. */ setOrderCustomer?: Maybe; settlePayment: SettlePaymentResult; settleRefund: SettleRefundResult; transitionFulfillmentToState: TransitionFulfillmentToStateResult; transitionOrderToState?: Maybe; transitionPaymentToState: TransitionPaymentToStateResult; /** Unsets the billing address for a draft Order */ unsetDraftOrderBillingAddress: Order; /** Unsets the shipping address for a draft Order */ unsetDraftOrderShippingAddress: Order; /** Update the active (currently logged-in) Administrator */ updateActiveAdministrator: Administrator; /** Update an existing Administrator */ updateAdministrator: Administrator; /** Update an existing Asset */ updateAsset: Asset; /** Update an existing Channel */ updateChannel: UpdateChannelResult; /** Update an existing Collection */ updateCollection: Collection; /** Update an existing Country */ updateCountry: Country; /** Update an existing Customer */ updateCustomer: UpdateCustomerResult; /** Update an existing Address */ updateCustomerAddress: Address; /** Update an existing CustomerGroup */ updateCustomerGroup: CustomerGroup; updateCustomerNote: HistoryEntry; /** Update an existing Facet */ updateFacet: Facet; /** Update one or more FacetValues */ updateFacetValues: Array; updateGlobalSettings: UpdateGlobalSettingsResult; updateOrderNote: HistoryEntry; /** Update an existing PaymentMethod */ updatePaymentMethod: PaymentMethod; /** Update an existing Product */ updateProduct: Product; /** Create a new ProductOption within a ProductOptionGroup */ updateProductOption: ProductOption; /** Update an existing ProductOptionGroup */ updateProductOptionGroup: ProductOptionGroup; /** Update an existing ProductVariant */ updateProductVariant: ProductVariant; /** Update existing ProductVariants */ updateProductVariants: Array>; /** Update multiple existing Products */ updateProducts: Array; updatePromotion: UpdatePromotionResult; /** Update an existing Province */ updateProvince: Province; /** Update an existing Role */ updateRole: Role; updateScheduledTask: ScheduledTask; /** Update an existing Seller */ updateSeller: Seller; /** Update an existing ShippingMethod */ updateShippingMethod: ShippingMethod; updateStockLocation: StockLocation; /** Update an existing Tag */ updateTag: Tag; /** Update an existing TaxCategory */ updateTaxCategory: TaxCategory; /** Update an existing TaxRate */ updateTaxRate: TaxRate; /** Update an existing Zone */ updateZone: Zone; }; export type MutationAddCustomersToGroupArgs = { customerGroupId: Scalars['ID']['input']; customerIds: Array; }; export type MutationAddFulfillmentToOrderArgs = { input: FulfillOrderInput; }; export type MutationAddItemToDraftOrderArgs = { input: AddItemToDraftOrderInput; orderId: Scalars['ID']['input']; }; export type MutationAddManualPaymentToOrderArgs = { input: ManualPaymentInput; }; export type MutationAddMembersToZoneArgs = { memberIds: Array; zoneId: Scalars['ID']['input']; }; export type MutationAddNoteToCustomerArgs = { input: AddNoteToCustomerInput; }; export type MutationAddNoteToOrderArgs = { input: AddNoteToOrderInput; }; export type MutationAddOptionGroupToProductArgs = { optionGroupId: Scalars['ID']['input']; productId: Scalars['ID']['input']; }; export type MutationAdjustDraftOrderLineArgs = { input: AdjustDraftOrderLineInput; orderId: Scalars['ID']['input']; }; export type MutationApplyCouponCodeToDraftOrderArgs = { couponCode: Scalars['String']['input']; orderId: Scalars['ID']['input']; }; export type MutationAssignAssetsToChannelArgs = { input: AssignAssetsToChannelInput; }; export type MutationAssignCollectionsToChannelArgs = { input: AssignCollectionsToChannelInput; }; export type MutationAssignFacetsToChannelArgs = { input: AssignFacetsToChannelInput; }; export type MutationAssignPaymentMethodsToChannelArgs = { input: AssignPaymentMethodsToChannelInput; }; export type MutationAssignProductVariantsToChannelArgs = { input: AssignProductVariantsToChannelInput; }; export type MutationAssignProductsToChannelArgs = { input: AssignProductsToChannelInput; }; export type MutationAssignPromotionsToChannelArgs = { input: AssignPromotionsToChannelInput; }; export type MutationAssignRoleToAdministratorArgs = { administratorId: Scalars['ID']['input']; roleId: Scalars['ID']['input']; }; export type MutationAssignShippingMethodsToChannelArgs = { input: AssignShippingMethodsToChannelInput; }; export type MutationAssignStockLocationsToChannelArgs = { input: AssignStockLocationsToChannelInput; }; export type MutationAuthenticateArgs = { input: AuthenticationInput; rememberMe?: InputMaybe; }; export type MutationCancelJobArgs = { jobId: Scalars['ID']['input']; }; export type MutationCancelOrderArgs = { input: CancelOrderInput; }; export type MutationCancelPaymentArgs = { id: Scalars['ID']['input']; }; export type MutationCreateAdministratorArgs = { input: CreateAdministratorInput; }; export type MutationCreateAssetsArgs = { input: Array; }; export type MutationCreateChannelArgs = { input: CreateChannelInput; }; export type MutationCreateCollectionArgs = { input: CreateCollectionInput; }; export type MutationCreateCountryArgs = { input: CreateCountryInput; }; export type MutationCreateCustomerArgs = { input: CreateCustomerInput; password?: InputMaybe; }; export type MutationCreateCustomerAddressArgs = { customerId: Scalars['ID']['input']; input: CreateAddressInput; }; export type MutationCreateCustomerGroupArgs = { input: CreateCustomerGroupInput; }; export type MutationCreateFacetArgs = { input: CreateFacetInput; }; export type MutationCreateFacetValuesArgs = { input: Array; }; export type MutationCreatePaymentMethodArgs = { input: CreatePaymentMethodInput; }; export type MutationCreateProductArgs = { input: CreateProductInput; }; export type MutationCreateProductOptionArgs = { input: CreateProductOptionInput; }; export type MutationCreateProductOptionGroupArgs = { input: CreateProductOptionGroupInput; }; export type MutationCreateProductVariantsArgs = { input: Array; }; export type MutationCreatePromotionArgs = { input: CreatePromotionInput; }; export type MutationCreateProvinceArgs = { input: CreateProvinceInput; }; export type MutationCreateRoleArgs = { input: CreateRoleInput; }; export type MutationCreateSellerArgs = { input: CreateSellerInput; }; export type MutationCreateShippingMethodArgs = { input: CreateShippingMethodInput; }; export type MutationCreateStockLocationArgs = { input: CreateStockLocationInput; }; export type MutationCreateTagArgs = { input: CreateTagInput; }; export type MutationCreateTaxCategoryArgs = { input: CreateTaxCategoryInput; }; export type MutationCreateTaxRateArgs = { input: CreateTaxRateInput; }; export type MutationCreateZoneArgs = { input: CreateZoneInput; }; export type MutationDeleteAdministratorArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteAdministratorsArgs = { ids: Array; }; export type MutationDeleteAssetArgs = { input: DeleteAssetInput; }; export type MutationDeleteAssetsArgs = { input: DeleteAssetsInput; }; export type MutationDeleteChannelArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteChannelsArgs = { ids: Array; }; export type MutationDeleteCollectionArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteCollectionsArgs = { ids: Array; }; export type MutationDeleteCountriesArgs = { ids: Array; }; export type MutationDeleteCountryArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteCustomerArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteCustomerAddressArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteCustomerGroupArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteCustomerGroupsArgs = { ids: Array; }; export type MutationDeleteCustomerNoteArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteCustomersArgs = { ids: Array; }; export type MutationDeleteDraftOrderArgs = { orderId: Scalars['ID']['input']; }; export type MutationDeleteFacetArgs = { force?: InputMaybe; id: Scalars['ID']['input']; }; export type MutationDeleteFacetValuesArgs = { force?: InputMaybe; ids: Array; }; export type MutationDeleteFacetsArgs = { force?: InputMaybe; ids: Array; }; export type MutationDeleteOrderNoteArgs = { id: Scalars['ID']['input']; }; export type MutationDeletePaymentMethodArgs = { force?: InputMaybe; id: Scalars['ID']['input']; }; export type MutationDeletePaymentMethodsArgs = { force?: InputMaybe; ids: Array; }; export type MutationDeleteProductArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteProductOptionArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteProductVariantArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteProductVariantsArgs = { ids: Array; }; export type MutationDeleteProductsArgs = { ids: Array; }; export type MutationDeletePromotionArgs = { id: Scalars['ID']['input']; }; export type MutationDeletePromotionsArgs = { ids: Array; }; export type MutationDeleteProvinceArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteRoleArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteRolesArgs = { ids: Array; }; export type MutationDeleteSellerArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteSellersArgs = { ids: Array; }; export type MutationDeleteShippingMethodArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteShippingMethodsArgs = { ids: Array; }; export type MutationDeleteStockLocationArgs = { input: DeleteStockLocationInput; }; export type MutationDeleteStockLocationsArgs = { input: Array; }; export type MutationDeleteTagArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteTaxCategoriesArgs = { ids: Array; }; export type MutationDeleteTaxCategoryArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteTaxRateArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteTaxRatesArgs = { ids: Array; }; export type MutationDeleteZoneArgs = { id: Scalars['ID']['input']; }; export type MutationDeleteZonesArgs = { ids: Array; }; export type MutationDuplicateEntityArgs = { input: DuplicateEntityInput; }; export type MutationFlushBufferedJobsArgs = { bufferIds?: InputMaybe>; }; export type MutationImportProductsArgs = { csvFile: Scalars['Upload']['input']; }; export type MutationLoginArgs = { password: Scalars['String']['input']; rememberMe?: InputMaybe; username: Scalars['String']['input']; }; export type MutationModifyOrderArgs = { input: ModifyOrderInput; }; export type MutationMoveCollectionArgs = { input: MoveCollectionInput; }; export type MutationRefundOrderArgs = { input: RefundOrderInput; }; export type MutationRemoveCollectionsFromChannelArgs = { input: RemoveCollectionsFromChannelInput; }; export type MutationRemoveCouponCodeFromDraftOrderArgs = { couponCode: Scalars['String']['input']; orderId: Scalars['ID']['input']; }; export type MutationRemoveCustomersFromGroupArgs = { customerGroupId: Scalars['ID']['input']; customerIds: Array; }; export type MutationRemoveDraftOrderLineArgs = { orderId: Scalars['ID']['input']; orderLineId: Scalars['ID']['input']; }; export type MutationRemoveFacetsFromChannelArgs = { input: RemoveFacetsFromChannelInput; }; export type MutationRemoveMembersFromZoneArgs = { memberIds: Array; zoneId: Scalars['ID']['input']; }; export type MutationRemoveOptionGroupFromProductArgs = { force?: InputMaybe; optionGroupId: Scalars['ID']['input']; productId: Scalars['ID']['input']; }; export type MutationRemovePaymentMethodsFromChannelArgs = { input: RemovePaymentMethodsFromChannelInput; }; export type MutationRemoveProductVariantsFromChannelArgs = { input: RemoveProductVariantsFromChannelInput; }; export type MutationRemoveProductsFromChannelArgs = { input: RemoveProductsFromChannelInput; }; export type MutationRemovePromotionsFromChannelArgs = { input: RemovePromotionsFromChannelInput; }; export type MutationRemoveSettledJobsArgs = { olderThan?: InputMaybe; queueNames?: InputMaybe>; }; export type MutationRemoveShippingMethodsFromChannelArgs = { input: RemoveShippingMethodsFromChannelInput; }; export type MutationRemoveStockLocationsFromChannelArgs = { input: RemoveStockLocationsFromChannelInput; }; export type MutationRunScheduledTaskArgs = { id: Scalars['String']['input']; }; export type MutationSetCustomerForDraftOrderArgs = { customerId?: InputMaybe; input?: InputMaybe; orderId: Scalars['ID']['input']; }; export type MutationSetDraftOrderBillingAddressArgs = { input: CreateAddressInput; orderId: Scalars['ID']['input']; }; export type MutationSetDraftOrderCustomFieldsArgs = { input: UpdateOrderInput; orderId: Scalars['ID']['input']; }; export type MutationSetDraftOrderShippingAddressArgs = { input: CreateAddressInput; orderId: Scalars['ID']['input']; }; export type MutationSetDraftOrderShippingMethodArgs = { orderId: Scalars['ID']['input']; shippingMethodId: Scalars['ID']['input']; }; export type MutationSetOrderCustomFieldsArgs = { input: UpdateOrderInput; }; export type MutationSetOrderCustomerArgs = { input: SetOrderCustomerInput; }; export type MutationSettlePaymentArgs = { id: Scalars['ID']['input']; }; export type MutationSettleRefundArgs = { input: SettleRefundInput; }; export type MutationTransitionFulfillmentToStateArgs = { id: Scalars['ID']['input']; state: Scalars['String']['input']; }; export type MutationTransitionOrderToStateArgs = { id: Scalars['ID']['input']; state: Scalars['String']['input']; }; export type MutationTransitionPaymentToStateArgs = { id: Scalars['ID']['input']; state: Scalars['String']['input']; }; export type MutationUnsetDraftOrderBillingAddressArgs = { orderId: Scalars['ID']['input']; }; export type MutationUnsetDraftOrderShippingAddressArgs = { orderId: Scalars['ID']['input']; }; export type MutationUpdateActiveAdministratorArgs = { input: UpdateActiveAdministratorInput; }; export type MutationUpdateAdministratorArgs = { input: UpdateAdministratorInput; }; export type MutationUpdateAssetArgs = { input: UpdateAssetInput; }; export type MutationUpdateChannelArgs = { input: UpdateChannelInput; }; export type MutationUpdateCollectionArgs = { input: UpdateCollectionInput; }; export type MutationUpdateCountryArgs = { input: UpdateCountryInput; }; export type MutationUpdateCustomerArgs = { input: UpdateCustomerInput; }; export type MutationUpdateCustomerAddressArgs = { input: UpdateAddressInput; }; export type MutationUpdateCustomerGroupArgs = { input: UpdateCustomerGroupInput; }; export type MutationUpdateCustomerNoteArgs = { input: UpdateCustomerNoteInput; }; export type MutationUpdateFacetArgs = { input: UpdateFacetInput; }; export type MutationUpdateFacetValuesArgs = { input: Array; }; export type MutationUpdateGlobalSettingsArgs = { input: UpdateGlobalSettingsInput; }; export type MutationUpdateOrderNoteArgs = { input: UpdateOrderNoteInput; }; export type MutationUpdatePaymentMethodArgs = { input: UpdatePaymentMethodInput; }; export type MutationUpdateProductArgs = { input: UpdateProductInput; }; export type MutationUpdateProductOptionArgs = { input: UpdateProductOptionInput; }; export type MutationUpdateProductOptionGroupArgs = { input: UpdateProductOptionGroupInput; }; export type MutationUpdateProductVariantArgs = { input: UpdateProductVariantInput; }; export type MutationUpdateProductVariantsArgs = { input: Array; }; export type MutationUpdateProductsArgs = { input: Array; }; export type MutationUpdatePromotionArgs = { input: UpdatePromotionInput; }; export type MutationUpdateProvinceArgs = { input: UpdateProvinceInput; }; export type MutationUpdateRoleArgs = { input: UpdateRoleInput; }; export type MutationUpdateScheduledTaskArgs = { input: UpdateScheduledTaskInput; }; export type MutationUpdateSellerArgs = { input: UpdateSellerInput; }; export type MutationUpdateShippingMethodArgs = { input: UpdateShippingMethodInput; }; export type MutationUpdateStockLocationArgs = { input: UpdateStockLocationInput; }; export type MutationUpdateTagArgs = { input: UpdateTagInput; }; export type MutationUpdateTaxCategoryArgs = { input: UpdateTaxCategoryInput; }; export type MutationUpdateTaxRateArgs = { input: UpdateTaxRateInput; }; export type MutationUpdateZoneArgs = { input: UpdateZoneInput; }; export type NativeAuthInput = { password: Scalars['String']['input']; username: Scalars['String']['input']; }; /** Returned when attempting an operation that relies on the NativeAuthStrategy, if that strategy is not configured. */ export type NativeAuthStrategyError = ErrorResult & { __typename?: 'NativeAuthStrategyError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type NativeAuthenticationResult = CurrentUser | InvalidCredentialsError | NativeAuthStrategyError; /** Returned when attempting to set a negative OrderLine quantity. */ export type NegativeQuantityError = ErrorResult & { __typename?: 'NegativeQuantityError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** * Returned when invoking a mutation which depends on there being an active Order on the * current session. */ export type NoActiveOrderError = ErrorResult & { __typename?: 'NoActiveOrderError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned when a call to modifyOrder fails to specify any changes */ export type NoChangesSpecifiedError = ErrorResult & { __typename?: 'NoChangesSpecifiedError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type Node = { id: Scalars['ID']['output']; }; /** Returned if an attempting to refund an Order but neither items nor shipping refund was specified */ export type NothingToRefundError = ErrorResult & { __typename?: 'NothingToRefundError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Operators for filtering on a list of Number fields */ export type NumberListOperators = { inList: Scalars['Float']['input']; }; /** Operators for filtering on a Int or Float field */ export type NumberOperators = { between?: InputMaybe; eq?: InputMaybe; gt?: InputMaybe; gte?: InputMaybe; isNull?: InputMaybe; lt?: InputMaybe; lte?: InputMaybe; }; export type NumberRange = { end: Scalars['Float']['input']; start: Scalars['Float']['input']; }; export type Order = Node & { __typename?: 'Order'; /** An order is active as long as the payment process has not been completed */ active: Scalars['Boolean']['output']; aggregateOrder?: Maybe; aggregateOrderId?: Maybe; billingAddress?: Maybe; channels: Array; /** A unique code for the Order */ code: Scalars['String']['output']; /** An array of all coupon codes applied to the Order */ couponCodes: Array; createdAt: Scalars['DateTime']['output']; currencyCode: CurrencyCode; customFields?: Maybe; customer?: Maybe; discounts: Array; fulfillments?: Maybe>; history: HistoryEntryList; id: Scalars['ID']['output']; lines: Array; modifications: Array; nextStates: Array; /** * The date & time that the Order was placed, i.e. the Customer * completed the checkout and the Order is no longer "active" */ orderPlacedAt?: Maybe; payments?: Maybe>; /** Promotions applied to the order. Only gets populated after the payment process has completed. */ promotions: Array; sellerOrders?: Maybe>; shipping: Scalars['Money']['output']; shippingAddress?: Maybe; shippingLines: Array; shippingWithTax: Scalars['Money']['output']; state: Scalars['String']['output']; /** * The subTotal is the total of all OrderLines in the Order. This figure also includes any Order-level * discounts which have been prorated (proportionally distributed) amongst the items of each OrderLine. * To get a total of all OrderLines which does not account for prorated discounts, use the * sum of `OrderLine.discountedLinePrice` values. */ subTotal: Scalars['Money']['output']; /** Same as subTotal, but inclusive of tax */ subTotalWithTax: Scalars['Money']['output']; /** * Surcharges are arbitrary modifications to the Order total which are neither * ProductVariants nor discounts resulting from applied Promotions. For example, * one-off discounts based on customer interaction, or surcharges based on payment * methods. */ surcharges: Array; /** A summary of the taxes being applied to this Order */ taxSummary: Array; /** Equal to subTotal plus shipping */ total: Scalars['Money']['output']; totalQuantity: Scalars['Int']['output']; /** The final payable amount. Equal to subTotalWithTax plus shippingWithTax */ totalWithTax: Scalars['Money']['output']; type: OrderType; updatedAt: Scalars['DateTime']['output']; }; export type OrderHistoryArgs = { options?: InputMaybe; }; export type OrderAddress = { __typename?: 'OrderAddress'; city?: Maybe; company?: Maybe; country?: Maybe; countryCode?: Maybe; customFields?: Maybe; fullName?: Maybe; phoneNumber?: Maybe; postalCode?: Maybe; province?: Maybe; streetLine1?: Maybe; streetLine2?: Maybe; }; export type OrderFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; active?: InputMaybe; aggregateOrderId?: InputMaybe; code?: InputMaybe; createdAt?: InputMaybe; currencyCode?: InputMaybe; customerLastName?: InputMaybe; id?: InputMaybe; orderPlacedAt?: InputMaybe; shipping?: InputMaybe; shippingWithTax?: InputMaybe; state?: InputMaybe; subTotal?: InputMaybe; subTotalWithTax?: InputMaybe; total?: InputMaybe; totalQuantity?: InputMaybe; totalWithTax?: InputMaybe; transactionId?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; }; /** Returned when an order operation is rejected by an OrderInterceptor method. */ export type OrderInterceptorError = ErrorResult & { __typename?: 'OrderInterceptorError'; errorCode: ErrorCode; interceptorError: Scalars['String']['output']; message: Scalars['String']['output']; }; /** Returned when the maximum order size limit has been reached. */ export type OrderLimitError = ErrorResult & { __typename?: 'OrderLimitError'; errorCode: ErrorCode; maxItems: Scalars['Int']['output']; message: Scalars['String']['output']; }; export type OrderLine = Node & { __typename?: 'OrderLine'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; /** The price of the line including discounts, excluding tax */ discountedLinePrice: Scalars['Money']['output']; /** The price of the line including discounts and tax */ discountedLinePriceWithTax: Scalars['Money']['output']; /** * The price of a single unit including discounts, excluding tax. * * If Order-level discounts have been applied, this will not be the * actual taxable unit price (see `proratedUnitPrice`), but is generally the * correct price to display to customers to avoid confusion * about the internal handling of distributed Order-level discounts. */ discountedUnitPrice: Scalars['Money']['output']; /** The price of a single unit including discounts and tax */ discountedUnitPriceWithTax: Scalars['Money']['output']; discounts: Array; featuredAsset?: Maybe; fulfillmentLines?: Maybe>; id: Scalars['ID']['output']; /** The total price of the line excluding tax and discounts. */ linePrice: Scalars['Money']['output']; /** The total price of the line including tax but excluding discounts. */ linePriceWithTax: Scalars['Money']['output']; /** The total tax on this line */ lineTax: Scalars['Money']['output']; order: Order; /** The quantity at the time the Order was placed */ orderPlacedQuantity: Scalars['Int']['output']; productVariant: ProductVariant; /** * The actual line price, taking into account both item discounts _and_ prorated (proportionally-distributed) * Order-level discounts. This value is the true economic value of the OrderLine, and is used in tax * and refund calculations. */ proratedLinePrice: Scalars['Money']['output']; /** The proratedLinePrice including tax */ proratedLinePriceWithTax: Scalars['Money']['output']; /** * The actual unit price, taking into account both item discounts _and_ prorated (proportionally-distributed) * Order-level discounts. This value is the true economic value of the OrderItem, and is used in tax * and refund calculations. */ proratedUnitPrice: Scalars['Money']['output']; /** The proratedUnitPrice including tax */ proratedUnitPriceWithTax: Scalars['Money']['output']; /** The quantity of items purchased */ quantity: Scalars['Int']['output']; taxLines: Array; taxRate: Scalars['Float']['output']; /** The price of a single unit, excluding tax and discounts */ unitPrice: Scalars['Money']['output']; /** Non-zero if the unitPrice has changed since it was initially added to Order */ unitPriceChangeSinceAdded: Scalars['Money']['output']; /** The price of a single unit, including tax but excluding discounts */ unitPriceWithTax: Scalars['Money']['output']; /** Non-zero if the unitPriceWithTax has changed since it was initially added to Order */ unitPriceWithTaxChangeSinceAdded: Scalars['Money']['output']; updatedAt: Scalars['DateTime']['output']; }; export type OrderLineInput = { orderLineId: Scalars['ID']['input']; quantity: Scalars['Int']['input']; }; export type OrderList = PaginatedList & { __typename?: 'OrderList'; items: Array; totalItems: Scalars['Int']['output']; }; export type OrderListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type OrderModification = Node & { __typename?: 'OrderModification'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; isSettled: Scalars['Boolean']['output']; lines: Array; note: Scalars['String']['output']; payment?: Maybe; priceChange: Scalars['Money']['output']; refund?: Maybe; surcharges?: Maybe>; updatedAt: Scalars['DateTime']['output']; }; /** Returned when attempting to modify the contents of an Order that is not in the `AddingItems` state. */ export type OrderModificationError = ErrorResult & { __typename?: 'OrderModificationError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type OrderModificationLine = { __typename?: 'OrderModificationLine'; modification: OrderModification; modificationId: Scalars['ID']['output']; orderLine: OrderLine; orderLineId: Scalars['ID']['output']; quantity: Scalars['Int']['output']; }; /** Returned when attempting to modify the contents of an Order that is not in the `Modifying` state. */ export type OrderModificationStateError = ErrorResult & { __typename?: 'OrderModificationStateError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type OrderProcessState = { __typename?: 'OrderProcessState'; name: Scalars['String']['output']; to: Array; }; export type OrderSortParameter = { aggregateOrderId?: InputMaybe; code?: InputMaybe; createdAt?: InputMaybe; customerLastName?: InputMaybe; id?: InputMaybe; orderPlacedAt?: InputMaybe; shipping?: InputMaybe; shippingWithTax?: InputMaybe; state?: InputMaybe; subTotal?: InputMaybe; subTotalWithTax?: InputMaybe; total?: InputMaybe; totalQuantity?: InputMaybe; totalWithTax?: InputMaybe; transactionId?: InputMaybe; updatedAt?: InputMaybe; }; /** Returned if there is an error in transitioning the Order state */ export type OrderStateTransitionError = ErrorResult & { __typename?: 'OrderStateTransitionError'; errorCode: ErrorCode; fromState: Scalars['String']['output']; message: Scalars['String']['output']; toState: Scalars['String']['output']; transitionError: Scalars['String']['output']; }; /** * A summary of the taxes being applied to this order, grouped * by taxRate. */ export type OrderTaxSummary = { __typename?: 'OrderTaxSummary'; /** A description of this tax */ description: Scalars['String']['output']; /** The total net price of OrderLines to which this taxRate applies */ taxBase: Scalars['Money']['output']; /** The taxRate as a percentage */ taxRate: Scalars['Float']['output']; /** The total tax being applied to the Order at this taxRate */ taxTotal: Scalars['Money']['output']; }; export enum OrderType { Aggregate = 'Aggregate', Regular = 'Regular', Seller = 'Seller' } export type PaginatedList = { items: Array; totalItems: Scalars['Int']['output']; }; export type Payment = Node & { __typename?: 'Payment'; amount: Scalars['Money']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; errorMessage?: Maybe; id: Scalars['ID']['output']; metadata?: Maybe; method: Scalars['String']['output']; nextStates: Array; refunds: Array; state: Scalars['String']['output']; transactionId?: Maybe; updatedAt: Scalars['DateTime']['output']; }; export type PaymentMethod = Node & { __typename?: 'PaymentMethod'; checker?: Maybe; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; description: Scalars['String']['output']; enabled: Scalars['Boolean']['output']; handler: ConfigurableOperation; id: Scalars['ID']['output']; name: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; }; export type PaymentMethodFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; enabled?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type PaymentMethodList = PaginatedList & { __typename?: 'PaymentMethodList'; items: Array; totalItems: Scalars['Int']['output']; }; export type PaymentMethodListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; /** * Returned when a call to modifyOrder fails to include a paymentMethod even * though the price has increased as a result of the changes. */ export type PaymentMethodMissingError = ErrorResult & { __typename?: 'PaymentMethodMissingError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type PaymentMethodQuote = { __typename?: 'PaymentMethodQuote'; code: Scalars['String']['output']; customFields?: Maybe; description: Scalars['String']['output']; eligibilityMessage?: Maybe; id: Scalars['ID']['output']; isEligible: Scalars['Boolean']['output']; name: Scalars['String']['output']; }; export type PaymentMethodSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type PaymentMethodTranslation = { __typename?: 'PaymentMethodTranslation'; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type PaymentMethodTranslationInput = { customFields?: InputMaybe; description?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; /** Returned if an attempting to refund a Payment against OrderLines from a different Order */ export type PaymentOrderMismatchError = ErrorResult & { __typename?: 'PaymentOrderMismatchError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned when there is an error in transitioning the Payment state */ export type PaymentStateTransitionError = ErrorResult & { __typename?: 'PaymentStateTransitionError'; errorCode: ErrorCode; fromState: Scalars['String']['output']; message: Scalars['String']['output']; toState: Scalars['String']['output']; transitionError: Scalars['String']['output']; }; /** * @description * Permissions for administrators and customers. Used to control access to * GraphQL resolvers via the {@link Allow} decorator. * * ## Understanding Permission.Owner * * `Permission.Owner` is a special permission which is used in some Vendure resolvers to indicate that that resolver should only * be accessible to the "owner" of that resource. * * For example, the Shop API `activeCustomer` query resolver should only return the Customer object for the "owner" of that Customer, i.e. * based on the activeUserId of the current session. As a result, the resolver code looks like this: * * @example * ```TypeScript * \@Query() * \@Allow(Permission.Owner) * async activeCustomer(\@Ctx() ctx: RequestContext): Promise { * const userId = ctx.activeUserId; * if (userId) { * return this.customerService.findOneByUserId(ctx, userId); * } * } * ``` * * Here we can see that the "ownership" must be enforced by custom logic inside the resolver. Since "ownership" cannot be defined generally * nor statically encoded at build-time, any resolvers using `Permission.Owner` **must** include logic to enforce that only the owner * of the resource has access. If not, then it is the equivalent of using `Permission.Public`. * * * @docsCategory common */ export enum Permission { /** Authenticated means simply that the user is logged in */ Authenticated = 'Authenticated', /** Grants permission to create Administrator */ CreateAdministrator = 'CreateAdministrator', /** Grants permission to create Asset */ CreateAsset = 'CreateAsset', /** Grants permission to create Products, Facets, Assets, Collections */ CreateCatalog = 'CreateCatalog', /** Grants permission to create Channel */ CreateChannel = 'CreateChannel', /** Grants permission to create Collection */ CreateCollection = 'CreateCollection', /** Grants permission to create Country */ CreateCountry = 'CreateCountry', /** Grants permission to create Customer */ CreateCustomer = 'CreateCustomer', /** Grants permission to create CustomerGroup */ CreateCustomerGroup = 'CreateCustomerGroup', /** Grants permission to create Facet */ CreateFacet = 'CreateFacet', /** Grants permission to create Order */ CreateOrder = 'CreateOrder', /** Grants permission to create PaymentMethod */ CreatePaymentMethod = 'CreatePaymentMethod', /** Grants permission to create Product */ CreateProduct = 'CreateProduct', /** Grants permission to create Promotion */ CreatePromotion = 'CreatePromotion', /** Grants permission to create Seller */ CreateSeller = 'CreateSeller', /** Grants permission to create PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */ CreateSettings = 'CreateSettings', /** Grants permission to create ShippingMethod */ CreateShippingMethod = 'CreateShippingMethod', /** Grants permission to create StockLocation */ CreateStockLocation = 'CreateStockLocation', /** Grants permission to create System */ CreateSystem = 'CreateSystem', /** Grants permission to create Tag */ CreateTag = 'CreateTag', /** Grants permission to create TaxCategory */ CreateTaxCategory = 'CreateTaxCategory', /** Grants permission to create TaxRate */ CreateTaxRate = 'CreateTaxRate', /** Grants permission to create Zone */ CreateZone = 'CreateZone', /** Grants permission to delete Administrator */ DeleteAdministrator = 'DeleteAdministrator', /** Grants permission to delete Asset */ DeleteAsset = 'DeleteAsset', /** Grants permission to delete Products, Facets, Assets, Collections */ DeleteCatalog = 'DeleteCatalog', /** Grants permission to delete Channel */ DeleteChannel = 'DeleteChannel', /** Grants permission to delete Collection */ DeleteCollection = 'DeleteCollection', /** Grants permission to delete Country */ DeleteCountry = 'DeleteCountry', /** Grants permission to delete Customer */ DeleteCustomer = 'DeleteCustomer', /** Grants permission to delete CustomerGroup */ DeleteCustomerGroup = 'DeleteCustomerGroup', /** Grants permission to delete Facet */ DeleteFacet = 'DeleteFacet', /** Grants permission to delete Order */ DeleteOrder = 'DeleteOrder', /** Grants permission to delete PaymentMethod */ DeletePaymentMethod = 'DeletePaymentMethod', /** Grants permission to delete Product */ DeleteProduct = 'DeleteProduct', /** Grants permission to delete Promotion */ DeletePromotion = 'DeletePromotion', /** Grants permission to delete Seller */ DeleteSeller = 'DeleteSeller', /** Grants permission to delete PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */ DeleteSettings = 'DeleteSettings', /** Grants permission to delete ShippingMethod */ DeleteShippingMethod = 'DeleteShippingMethod', /** Grants permission to delete StockLocation */ DeleteStockLocation = 'DeleteStockLocation', /** Grants permission to delete System */ DeleteSystem = 'DeleteSystem', /** Grants permission to delete Tag */ DeleteTag = 'DeleteTag', /** Grants permission to delete TaxCategory */ DeleteTaxCategory = 'DeleteTaxCategory', /** Grants permission to delete TaxRate */ DeleteTaxRate = 'DeleteTaxRate', /** Grants permission to delete Zone */ DeleteZone = 'DeleteZone', /** Owner means the user owns this entity, e.g. a Customer's own Order */ Owner = 'Owner', /** Public means any unauthenticated user may perform the operation */ Public = 'Public', /** Grants permission to read Administrator */ ReadAdministrator = 'ReadAdministrator', /** Grants permission to read Asset */ ReadAsset = 'ReadAsset', /** Grants permission to read Products, Facets, Assets, Collections */ ReadCatalog = 'ReadCatalog', /** Grants permission to read Channel */ ReadChannel = 'ReadChannel', /** Grants permission to read Collection */ ReadCollection = 'ReadCollection', /** Grants permission to read Country */ ReadCountry = 'ReadCountry', /** Grants permission to read Customer */ ReadCustomer = 'ReadCustomer', /** Grants permission to read CustomerGroup */ ReadCustomerGroup = 'ReadCustomerGroup', /** Grants permission to read Facet */ ReadFacet = 'ReadFacet', /** Grants permission to read Order */ ReadOrder = 'ReadOrder', /** Grants permission to read PaymentMethod */ ReadPaymentMethod = 'ReadPaymentMethod', /** Grants permission to read Product */ ReadProduct = 'ReadProduct', /** Grants permission to read Promotion */ ReadPromotion = 'ReadPromotion', /** Grants permission to read Seller */ ReadSeller = 'ReadSeller', /** Grants permission to read PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */ ReadSettings = 'ReadSettings', /** Grants permission to read ShippingMethod */ ReadShippingMethod = 'ReadShippingMethod', /** Grants permission to read StockLocation */ ReadStockLocation = 'ReadStockLocation', /** Grants permission to read System */ ReadSystem = 'ReadSystem', /** Grants permission to read Tag */ ReadTag = 'ReadTag', /** Grants permission to read TaxCategory */ ReadTaxCategory = 'ReadTaxCategory', /** Grants permission to read TaxRate */ ReadTaxRate = 'ReadTaxRate', /** Grants permission to read Zone */ ReadZone = 'ReadZone', /** SuperAdmin has unrestricted access to all operations */ SuperAdmin = 'SuperAdmin', /** Grants permission to update Administrator */ UpdateAdministrator = 'UpdateAdministrator', /** Grants permission to update Asset */ UpdateAsset = 'UpdateAsset', /** Grants permission to update Products, Facets, Assets, Collections */ UpdateCatalog = 'UpdateCatalog', /** Grants permission to update Channel */ UpdateChannel = 'UpdateChannel', /** Grants permission to update Collection */ UpdateCollection = 'UpdateCollection', /** Grants permission to update Country */ UpdateCountry = 'UpdateCountry', /** Grants permission to update Customer */ UpdateCustomer = 'UpdateCustomer', /** Grants permission to update CustomerGroup */ UpdateCustomerGroup = 'UpdateCustomerGroup', /** Grants permission to update Facet */ UpdateFacet = 'UpdateFacet', /** Grants permission to update GlobalSettings */ UpdateGlobalSettings = 'UpdateGlobalSettings', /** Grants permission to update Order */ UpdateOrder = 'UpdateOrder', /** Grants permission to update PaymentMethod */ UpdatePaymentMethod = 'UpdatePaymentMethod', /** Grants permission to update Product */ UpdateProduct = 'UpdateProduct', /** Grants permission to update Promotion */ UpdatePromotion = 'UpdatePromotion', /** Grants permission to update Seller */ UpdateSeller = 'UpdateSeller', /** Grants permission to update PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */ UpdateSettings = 'UpdateSettings', /** Grants permission to update ShippingMethod */ UpdateShippingMethod = 'UpdateShippingMethod', /** Grants permission to update StockLocation */ UpdateStockLocation = 'UpdateStockLocation', /** Grants permission to update System */ UpdateSystem = 'UpdateSystem', /** Grants permission to update Tag */ UpdateTag = 'UpdateTag', /** Grants permission to update TaxCategory */ UpdateTaxCategory = 'UpdateTaxCategory', /** Grants permission to update TaxRate */ UpdateTaxRate = 'UpdateTaxRate', /** Grants permission to update Zone */ UpdateZone = 'UpdateZone' } export type PermissionDefinition = { __typename?: 'PermissionDefinition'; assignable: Scalars['Boolean']['output']; description: Scalars['String']['output']; name: Scalars['String']['output']; }; export type PreviewCollectionVariantsInput = { filters: Array; inheritFilters: Scalars['Boolean']['input']; parentId?: InputMaybe; }; /** The price range where the result has more than one price */ export type PriceRange = { __typename?: 'PriceRange'; max: Scalars['Money']['output']; min: Scalars['Money']['output']; }; export type Product = Node & { __typename?: 'Product'; assets: Array; channels: Array; collections: Array; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; description: Scalars['String']['output']; enabled: Scalars['Boolean']['output']; facetValues: Array; featuredAsset?: Maybe; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; optionGroups: Array; slug: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; /** Returns a paginated, sortable, filterable list of ProductVariants */ variantList: ProductVariantList; /** Returns all ProductVariants */ variants: Array; }; export type ProductVariantListArgs = { options?: InputMaybe; }; export type ProductFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; description?: InputMaybe; enabled?: InputMaybe; facetValueId?: InputMaybe; id?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; sku?: InputMaybe; slug?: InputMaybe; updatedAt?: InputMaybe; }; export type ProductList = PaginatedList & { __typename?: 'ProductList'; items: Array; totalItems: Scalars['Int']['output']; }; export type ProductListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type ProductOption = Node & { __typename?: 'ProductOption'; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; group: ProductOptionGroup; groupId: Scalars['ID']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; }; export type ProductOptionGroup = Node & { __typename?: 'ProductOptionGroup'; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; options: Array; translations: Array; updatedAt: Scalars['DateTime']['output']; }; export type ProductOptionGroupTranslation = { __typename?: 'ProductOptionGroupTranslation'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ProductOptionGroupTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; export type ProductOptionInUseError = ErrorResult & { __typename?: 'ProductOptionInUseError'; errorCode: ErrorCode; message: Scalars['String']['output']; optionGroupCode: Scalars['String']['output']; productVariantCount: Scalars['Int']['output']; }; export type ProductOptionTranslation = { __typename?: 'ProductOptionTranslation'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ProductOptionTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; export type ProductSortParameter = { createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; name?: InputMaybe; slug?: InputMaybe; updatedAt?: InputMaybe; }; export type ProductTranslation = { __typename?: 'ProductTranslation'; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; slug: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ProductTranslationInput = { customFields?: InputMaybe; description?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; slug?: InputMaybe; }; export type ProductVariant = Node & { __typename?: 'ProductVariant'; assets: Array; channels: Array; createdAt: Scalars['DateTime']['output']; currencyCode: CurrencyCode; customFields?: Maybe; enabled: Scalars['Boolean']['output']; facetValues: Array; featuredAsset?: Maybe; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; options: Array; outOfStockThreshold: Scalars['Int']['output']; price: Scalars['Money']['output']; priceWithTax: Scalars['Money']['output']; prices: Array; product: Product; productId: Scalars['ID']['output']; sku: Scalars['String']['output']; /** @deprecated use stockLevels */ stockAllocated: Scalars['Int']['output']; stockLevel: Scalars['String']['output']; stockLevels: Array; stockMovements: StockMovementList; /** @deprecated use stockLevels */ stockOnHand: Scalars['Int']['output']; taxCategory: TaxCategory; taxRateApplied: TaxRate; trackInventory: GlobalFlag; translations: Array; updatedAt: Scalars['DateTime']['output']; useGlobalOutOfStockThreshold: Scalars['Boolean']['output']; }; export type ProductVariantStockMovementsArgs = { options?: InputMaybe; }; export type ProductVariantFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; currencyCode?: InputMaybe; enabled?: InputMaybe; facetValueId?: InputMaybe; id?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; outOfStockThreshold?: InputMaybe; price?: InputMaybe; priceWithTax?: InputMaybe; productId?: InputMaybe; sku?: InputMaybe; stockAllocated?: InputMaybe; stockLevel?: InputMaybe; stockOnHand?: InputMaybe; trackInventory?: InputMaybe; updatedAt?: InputMaybe; useGlobalOutOfStockThreshold?: InputMaybe; }; export type ProductVariantList = PaginatedList & { __typename?: 'ProductVariantList'; items: Array; totalItems: Scalars['Int']['output']; }; export type ProductVariantListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type ProductVariantPrice = { __typename?: 'ProductVariantPrice'; currencyCode: CurrencyCode; customFields?: Maybe; price: Scalars['Money']['output']; }; export type ProductVariantSortParameter = { createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; outOfStockThreshold?: InputMaybe; price?: InputMaybe; priceWithTax?: InputMaybe; productId?: InputMaybe; sku?: InputMaybe; stockAllocated?: InputMaybe; stockLevel?: InputMaybe; stockOnHand?: InputMaybe; updatedAt?: InputMaybe; }; export type ProductVariantTranslation = { __typename?: 'ProductVariantTranslation'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ProductVariantTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; export type Promotion = Node & { __typename?: 'Promotion'; actions: Array; conditions: Array; couponCode?: Maybe; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; description: Scalars['String']['output']; enabled: Scalars['Boolean']['output']; endsAt?: Maybe; id: Scalars['ID']['output']; name: Scalars['String']['output']; perCustomerUsageLimit?: Maybe; startsAt?: Maybe; translations: Array; updatedAt: Scalars['DateTime']['output']; usageLimit?: Maybe; }; export type PromotionFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; couponCode?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; enabled?: InputMaybe; endsAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; perCustomerUsageLimit?: InputMaybe; startsAt?: InputMaybe; updatedAt?: InputMaybe; usageLimit?: InputMaybe; }; export type PromotionList = PaginatedList & { __typename?: 'PromotionList'; items: Array; totalItems: Scalars['Int']['output']; }; export type PromotionListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type PromotionSortParameter = { couponCode?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; endsAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; perCustomerUsageLimit?: InputMaybe; startsAt?: InputMaybe; updatedAt?: InputMaybe; usageLimit?: InputMaybe; }; export type PromotionTranslation = { __typename?: 'PromotionTranslation'; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type PromotionTranslationInput = { customFields?: InputMaybe; description?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; export type Province = Node & Region & { __typename?: 'Province'; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; enabled: Scalars['Boolean']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; parent?: Maybe; parentId?: Maybe; translations: Array; type: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ProvinceFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; enabled?: InputMaybe; id?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; parentId?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; }; export type ProvinceList = PaginatedList & { __typename?: 'ProvinceList'; items: Array; totalItems: Scalars['Int']['output']; }; export type ProvinceListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type ProvinceSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; parentId?: InputMaybe; type?: InputMaybe; updatedAt?: InputMaybe; }; export type ProvinceTranslationInput = { customFields?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; /** Returned if the specified quantity of an OrderLine is greater than the number of items in that line */ export type QuantityTooGreatError = ErrorResult & { __typename?: 'QuantityTooGreatError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; export type Query = { __typename?: 'Query'; activeAdministrator?: Maybe; activeChannel: Channel; administrator?: Maybe; administrators: AdministratorList; /** Get a single Asset by id */ asset?: Maybe; /** Get a list of Assets */ assets: AssetList; channel?: Maybe; channels: ChannelList; /** Get a Collection either by id or slug. If neither id nor slug is specified, an error will result. */ collection?: Maybe; collectionFilters: Array; collections: CollectionList; countries: CountryList; country?: Maybe; customer?: Maybe; customerGroup?: Maybe; customerGroups: CustomerGroupList; customers: CustomerList; /** Returns a list of eligible shipping methods for the draft Order */ eligibleShippingMethodsForDraftOrder: Array; /** Returns all configured EntityDuplicators. */ entityDuplicators: Array; facet?: Maybe; facetValues: FacetValueList; facets: FacetList; fulfillmentHandlers: Array; globalSettings: GlobalSettings; job?: Maybe; jobBufferSize: Array; jobQueues: Array; jobs: JobList; jobsById: Array; me?: Maybe; /** Get metrics for the given interval and metric types. */ metricSummary: Array; order?: Maybe; orders: OrderList; paymentMethod?: Maybe; paymentMethodEligibilityCheckers: Array; paymentMethodHandlers: Array; paymentMethods: PaymentMethodList; pendingSearchIndexUpdates: Scalars['Int']['output']; /** Used for real-time previews of the contents of a Collection */ previewCollectionVariants: ProductVariantList; /** Get a Product either by id or slug. If neither id nor slug is specified, an error will result. */ product?: Maybe; productOptionGroup?: Maybe; productOptionGroups: Array; /** Get a ProductVariant by id */ productVariant?: Maybe; /** List ProductVariants either all or for the specific product. */ productVariants: ProductVariantList; /** List Products */ products: ProductList; promotion?: Maybe; promotionActions: Array; promotionConditions: Array; promotions: PromotionList; province?: Maybe; provinces: ProvinceList; role?: Maybe; roles: RoleList; scheduledTasks: Array; search: SearchResponse; seller?: Maybe; sellers: SellerList; shippingCalculators: Array; shippingEligibilityCheckers: Array; shippingMethod?: Maybe; shippingMethods: ShippingMethodList; stockLocation?: Maybe; stockLocations: StockLocationList; tag: Tag; tags: TagList; taxCategories: TaxCategoryList; taxCategory?: Maybe; taxRate?: Maybe; taxRates: TaxRateList; testEligibleShippingMethods: Array; testShippingMethod: TestShippingMethodResult; zone?: Maybe; zones: ZoneList; }; export type QueryAdministratorArgs = { id: Scalars['ID']['input']; }; export type QueryAdministratorsArgs = { options?: InputMaybe; }; export type QueryAssetArgs = { id: Scalars['ID']['input']; }; export type QueryAssetsArgs = { options?: InputMaybe; }; export type QueryChannelArgs = { id: Scalars['ID']['input']; }; export type QueryChannelsArgs = { options?: InputMaybe; }; export type QueryCollectionArgs = { id?: InputMaybe; slug?: InputMaybe; }; export type QueryCollectionsArgs = { options?: InputMaybe; }; export type QueryCountriesArgs = { options?: InputMaybe; }; export type QueryCountryArgs = { id: Scalars['ID']['input']; }; export type QueryCustomerArgs = { id: Scalars['ID']['input']; }; export type QueryCustomerGroupArgs = { id: Scalars['ID']['input']; }; export type QueryCustomerGroupsArgs = { options?: InputMaybe; }; export type QueryCustomersArgs = { options?: InputMaybe; }; export type QueryEligibleShippingMethodsForDraftOrderArgs = { orderId: Scalars['ID']['input']; }; export type QueryFacetArgs = { id: Scalars['ID']['input']; }; export type QueryFacetValuesArgs = { options?: InputMaybe; }; export type QueryFacetsArgs = { options?: InputMaybe; }; export type QueryJobArgs = { jobId: Scalars['ID']['input']; }; export type QueryJobBufferSizeArgs = { bufferIds?: InputMaybe>; }; export type QueryJobsArgs = { options?: InputMaybe; }; export type QueryJobsByIdArgs = { jobIds: Array; }; export type QueryMetricSummaryArgs = { input?: InputMaybe; }; export type QueryOrderArgs = { id: Scalars['ID']['input']; }; export type QueryOrdersArgs = { options?: InputMaybe; }; export type QueryPaymentMethodArgs = { id: Scalars['ID']['input']; }; export type QueryPaymentMethodsArgs = { options?: InputMaybe; }; export type QueryPreviewCollectionVariantsArgs = { input: PreviewCollectionVariantsInput; options?: InputMaybe; }; export type QueryProductArgs = { id?: InputMaybe; slug?: InputMaybe; }; export type QueryProductOptionGroupArgs = { id: Scalars['ID']['input']; }; export type QueryProductOptionGroupsArgs = { filterTerm?: InputMaybe; }; export type QueryProductVariantArgs = { id: Scalars['ID']['input']; }; export type QueryProductVariantsArgs = { options?: InputMaybe; productId?: InputMaybe; }; export type QueryProductsArgs = { options?: InputMaybe; }; export type QueryPromotionArgs = { id: Scalars['ID']['input']; }; export type QueryPromotionsArgs = { options?: InputMaybe; }; export type QueryProvinceArgs = { id: Scalars['ID']['input']; }; export type QueryProvincesArgs = { options?: InputMaybe; }; export type QueryRoleArgs = { id: Scalars['ID']['input']; }; export type QueryRolesArgs = { options?: InputMaybe; }; export type QuerySearchArgs = { input: SearchInput; }; export type QuerySellerArgs = { id: Scalars['ID']['input']; }; export type QuerySellersArgs = { options?: InputMaybe; }; export type QueryShippingMethodArgs = { id: Scalars['ID']['input']; }; export type QueryShippingMethodsArgs = { options?: InputMaybe; }; export type QueryStockLocationArgs = { id: Scalars['ID']['input']; }; export type QueryStockLocationsArgs = { options?: InputMaybe; }; export type QueryTagArgs = { id: Scalars['ID']['input']; }; export type QueryTagsArgs = { options?: InputMaybe; }; export type QueryTaxCategoriesArgs = { options?: InputMaybe; }; export type QueryTaxCategoryArgs = { id: Scalars['ID']['input']; }; export type QueryTaxRateArgs = { id: Scalars['ID']['input']; }; export type QueryTaxRatesArgs = { options?: InputMaybe; }; export type QueryTestEligibleShippingMethodsArgs = { input: TestEligibleShippingMethodsInput; }; export type QueryTestShippingMethodArgs = { input: TestShippingMethodInput; }; export type QueryZoneArgs = { id: Scalars['ID']['input']; }; export type QueryZonesArgs = { options?: InputMaybe; }; export type Refund = Node & { __typename?: 'Refund'; adjustment: Scalars['Money']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; items: Scalars['Money']['output']; lines: Array; metadata?: Maybe; method?: Maybe; paymentId: Scalars['ID']['output']; reason?: Maybe; shipping: Scalars['Money']['output']; state: Scalars['String']['output']; total: Scalars['Money']['output']; transactionId?: Maybe; updatedAt: Scalars['DateTime']['output']; }; /** Returned if `amount` is greater than the maximum un-refunded amount of the Payment */ export type RefundAmountError = ErrorResult & { __typename?: 'RefundAmountError'; errorCode: ErrorCode; maximumRefundable: Scalars['Int']['output']; message: Scalars['String']['output']; }; export type RefundLine = { __typename?: 'RefundLine'; orderLine: OrderLine; orderLineId: Scalars['ID']['output']; quantity: Scalars['Int']['output']; refund: Refund; refundId: Scalars['ID']['output']; }; export type RefundOrderInput = { /** @deprecated Use the `amount` field instead */ adjustment?: InputMaybe; /** * The amount to be refunded to this particular payment. This was introduced in v2.2.0 as the preferred way to specify the refund amount. * Can be as much as the total amount of the payment minus the sum of all previous refunds. */ amount?: InputMaybe; /** @deprecated Use the `amount` field instead */ lines?: InputMaybe>; paymentId: Scalars['ID']['input']; reason?: InputMaybe; /** @deprecated Use the `amount` field instead */ shipping?: InputMaybe; }; export type RefundOrderResult = AlreadyRefundedError | MultipleOrderError | NothingToRefundError | OrderStateTransitionError | PaymentOrderMismatchError | QuantityTooGreatError | Refund | RefundAmountError | RefundOrderStateError | RefundStateTransitionError; /** Returned if an attempting to refund an Order which is not in the expected state */ export type RefundOrderStateError = ErrorResult & { __typename?: 'RefundOrderStateError'; errorCode: ErrorCode; message: Scalars['String']['output']; orderState: Scalars['String']['output']; }; /** * Returned when a call to modifyOrder fails to include a refundPaymentId even * though the price has decreased as a result of the changes. */ export type RefundPaymentIdMissingError = ErrorResult & { __typename?: 'RefundPaymentIdMissingError'; errorCode: ErrorCode; message: Scalars['String']['output']; }; /** Returned when there is an error in transitioning the Refund state */ export type RefundStateTransitionError = ErrorResult & { __typename?: 'RefundStateTransitionError'; errorCode: ErrorCode; fromState: Scalars['String']['output']; message: Scalars['String']['output']; toState: Scalars['String']['output']; transitionError: Scalars['String']['output']; }; export type Region = { code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; enabled: Scalars['Boolean']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; parent?: Maybe; parentId?: Maybe; translations: Array; type: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type RegionTranslation = { __typename?: 'RegionTranslation'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type RelationCustomFieldConfig = CustomField & { __typename?: 'RelationCustomFieldConfig'; description?: Maybe>; entity: Scalars['String']['output']; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; scalarFields: Array; type: Scalars['String']['output']; ui?: Maybe; }; export type Release = Node & StockMovement & { __typename?: 'Release'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; export type RemoveCollectionsFromChannelInput = { channelId: Scalars['ID']['input']; collectionIds: Array; }; export type RemoveFacetFromChannelResult = Facet | FacetInUseError; export type RemoveFacetsFromChannelInput = { channelId: Scalars['ID']['input']; facetIds: Array; force?: InputMaybe; }; export type RemoveOptionGroupFromProductResult = Product | ProductOptionInUseError; export type RemoveOrderItemsResult = Order | OrderInterceptorError | OrderModificationError; export type RemovePaymentMethodsFromChannelInput = { channelId: Scalars['ID']['input']; paymentMethodIds: Array; }; export type RemoveProductVariantsFromChannelInput = { channelId: Scalars['ID']['input']; productVariantIds: Array; }; export type RemoveProductsFromChannelInput = { channelId: Scalars['ID']['input']; productIds: Array; }; export type RemovePromotionsFromChannelInput = { channelId: Scalars['ID']['input']; promotionIds: Array; }; export type RemoveShippingMethodsFromChannelInput = { channelId: Scalars['ID']['input']; shippingMethodIds: Array; }; export type RemoveStockLocationsFromChannelInput = { channelId: Scalars['ID']['input']; stockLocationIds: Array; }; export type Return = Node & StockMovement & { __typename?: 'Return'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; export type Role = Node & { __typename?: 'Role'; channels: Array; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; permissions: Array; updatedAt: Scalars['DateTime']['output']; }; export type RoleFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; updatedAt?: InputMaybe; }; export type RoleList = PaginatedList & { __typename?: 'RoleList'; items: Array; totalItems: Scalars['Int']['output']; }; export type RoleListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type RoleSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; updatedAt?: InputMaybe; }; export type Sale = Node & StockMovement & { __typename?: 'Sale'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; export type ScheduledTask = { __typename?: 'ScheduledTask'; description: Scalars['String']['output']; enabled: Scalars['Boolean']['output']; id: Scalars['String']['output']; isRunning: Scalars['Boolean']['output']; lastExecutedAt?: Maybe; lastResult?: Maybe; nextExecutionAt?: Maybe; schedule: Scalars['String']['output']; scheduleDescription: Scalars['String']['output']; }; export type SearchInput = { collectionId?: InputMaybe; collectionSlug?: InputMaybe; facetValueFilters?: InputMaybe>; /** @deprecated Use `facetValueFilters` instead */ facetValueIds?: InputMaybe>; /** @deprecated Use `facetValueFilters` instead */ facetValueOperator?: InputMaybe; groupByProduct?: InputMaybe; skip?: InputMaybe; sort?: InputMaybe; take?: InputMaybe; term?: InputMaybe; }; export type SearchReindexResponse = { __typename?: 'SearchReindexResponse'; success: Scalars['Boolean']['output']; }; export type SearchResponse = { __typename?: 'SearchResponse'; collections: Array; facetValues: Array; items: Array; totalItems: Scalars['Int']['output']; }; export type SearchResult = { __typename?: 'SearchResult'; /** An array of ids of the Channels in which this result appears */ channelIds: Array; /** An array of ids of the Collections in which this result appears */ collectionIds: Array; currencyCode: CurrencyCode; description: Scalars['String']['output']; enabled: Scalars['Boolean']['output']; facetIds: Array; facetValueIds: Array; price: SearchResultPrice; priceWithTax: SearchResultPrice; productAsset?: Maybe; productId: Scalars['ID']['output']; productName: Scalars['String']['output']; productVariantAsset?: Maybe; productVariantId: Scalars['ID']['output']; productVariantName: Scalars['String']['output']; /** A relevance score for the result. Differs between database implementations */ score: Scalars['Float']['output']; sku: Scalars['String']['output']; slug: Scalars['String']['output']; }; export type SearchResultAsset = { __typename?: 'SearchResultAsset'; focalPoint?: Maybe; id: Scalars['ID']['output']; preview: Scalars['String']['output']; }; /** The price of a search result product, either as a range or as a single price */ export type SearchResultPrice = PriceRange | SinglePrice; export type SearchResultSortParameter = { name?: InputMaybe; price?: InputMaybe; }; export type Seller = Node & { __typename?: 'Seller'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type SellerFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type SellerList = PaginatedList & { __typename?: 'SellerList'; items: Array; totalItems: Scalars['Int']['output']; }; export type SellerListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type SellerSortParameter = { createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type ServerConfig = { __typename?: 'ServerConfig'; /** * This field is deprecated in v2.2 in favor of the entityCustomFields field, * which allows custom fields to be defined on user-supplies entities. */ customFieldConfig: CustomFields; entityCustomFields: Array; moneyStrategyPrecision: Scalars['Int']['output']; orderProcess: Array; permissions: Array; permittedAssetTypes: Array; }; export type SetCustomerForDraftOrderResult = EmailAddressConflictError | Order; export type SetOrderCustomerInput = { customerId: Scalars['ID']['input']; note?: InputMaybe; orderId: Scalars['ID']['input']; }; export type SetOrderShippingMethodResult = IneligibleShippingMethodError | NoActiveOrderError | Order | OrderModificationError; /** Returned if the Payment settlement fails */ export type SettlePaymentError = ErrorResult & { __typename?: 'SettlePaymentError'; errorCode: ErrorCode; message: Scalars['String']['output']; paymentErrorMessage: Scalars['String']['output']; }; export type SettlePaymentResult = OrderStateTransitionError | Payment | PaymentStateTransitionError | SettlePaymentError; export type SettleRefundInput = { id: Scalars['ID']['input']; transactionId: Scalars['String']['input']; }; export type SettleRefundResult = Refund | RefundStateTransitionError; export type ShippingLine = { __typename?: 'ShippingLine'; customFields?: Maybe; discountedPrice: Scalars['Money']['output']; discountedPriceWithTax: Scalars['Money']['output']; discounts: Array; id: Scalars['ID']['output']; price: Scalars['Money']['output']; priceWithTax: Scalars['Money']['output']; shippingMethod: ShippingMethod; }; export type ShippingMethod = Node & { __typename?: 'ShippingMethod'; calculator: ConfigurableOperation; checker: ConfigurableOperation; code: Scalars['String']['output']; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; description: Scalars['String']['output']; fulfillmentHandlerCode: Scalars['String']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; translations: Array; updatedAt: Scalars['DateTime']['output']; }; export type ShippingMethodFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; code?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; fulfillmentHandlerCode?: InputMaybe; id?: InputMaybe; languageCode?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type ShippingMethodList = PaginatedList & { __typename?: 'ShippingMethodList'; items: Array; totalItems: Scalars['Int']['output']; }; export type ShippingMethodListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type ShippingMethodQuote = { __typename?: 'ShippingMethodQuote'; code: Scalars['String']['output']; customFields?: Maybe; description: Scalars['String']['output']; id: Scalars['ID']['output']; /** Any optional metadata returned by the ShippingCalculator in the ShippingCalculationResult */ metadata?: Maybe; name: Scalars['String']['output']; price: Scalars['Money']['output']; priceWithTax: Scalars['Money']['output']; }; export type ShippingMethodSortParameter = { code?: InputMaybe; createdAt?: InputMaybe; description?: InputMaybe; fulfillmentHandlerCode?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type ShippingMethodTranslation = { __typename?: 'ShippingMethodTranslation'; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; languageCode: LanguageCode; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ShippingMethodTranslationInput = { customFields?: InputMaybe; description?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; }; /** The price value where the result has a single price */ export type SinglePrice = { __typename?: 'SinglePrice'; value: Scalars['Money']['output']; }; export enum SortOrder { ASC = 'ASC', DESC = 'DESC' } export type StockAdjustment = Node & StockMovement & { __typename?: 'StockAdjustment'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; export type StockLevel = Node & { __typename?: 'StockLevel'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; stockAllocated: Scalars['Int']['output']; stockLocation: StockLocation; stockLocationId: Scalars['ID']['output']; stockOnHand: Scalars['Int']['output']; updatedAt: Scalars['DateTime']['output']; }; export type StockLevelInput = { stockLocationId: Scalars['ID']['input']; stockOnHand: Scalars['Int']['input']; }; export type StockLocation = Node & { __typename?: 'StockLocation'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; description: Scalars['String']['output']; id: Scalars['ID']['output']; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type StockLocationFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type StockLocationList = PaginatedList & { __typename?: 'StockLocationList'; items: Array; totalItems: Scalars['Int']['output']; }; export type StockLocationListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type StockLocationSortParameter = { createdAt?: InputMaybe; description?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type StockMovement = { createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; productVariant: ProductVariant; quantity: Scalars['Int']['output']; type: StockMovementType; updatedAt: Scalars['DateTime']['output']; }; export type StockMovementItem = Allocation | Cancellation | Release | Return | Sale | StockAdjustment; export type StockMovementList = { __typename?: 'StockMovementList'; items: Array; totalItems: Scalars['Int']['output']; }; export type StockMovementListOptions = { skip?: InputMaybe; take?: InputMaybe; type?: InputMaybe; }; export enum StockMovementType { ADJUSTMENT = 'ADJUSTMENT', ALLOCATION = 'ALLOCATION', CANCELLATION = 'CANCELLATION', RELEASE = 'RELEASE', RETURN = 'RETURN', SALE = 'SALE' } export type StringCustomFieldConfig = CustomField & { __typename?: 'StringCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; length?: Maybe; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; options?: Maybe>; pattern?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; export type StringFieldOption = { __typename?: 'StringFieldOption'; label?: Maybe>; value: Scalars['String']['output']; }; /** Operators for filtering on a list of String fields */ export type StringListOperators = { inList: Scalars['String']['input']; }; /** Operators for filtering on a String field */ export type StringOperators = { contains?: InputMaybe; eq?: InputMaybe; in?: InputMaybe>; isNull?: InputMaybe; notContains?: InputMaybe; notEq?: InputMaybe; notIn?: InputMaybe>; regex?: InputMaybe; }; export type StringStructFieldConfig = StructField & { __typename?: 'StringStructFieldConfig'; description?: Maybe>; label?: Maybe>; length?: Maybe; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; options?: Maybe>; pattern?: Maybe; type: Scalars['String']['output']; ui?: Maybe; }; export type StructCustomFieldConfig = CustomField & { __typename?: 'StructCustomFieldConfig'; description?: Maybe>; fields: Array; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; export type StructField = { description?: Maybe>; label?: Maybe>; list?: Maybe; name: Scalars['String']['output']; type: Scalars['String']['output']; ui?: Maybe; }; export type StructFieldConfig = BooleanStructFieldConfig | DateTimeStructFieldConfig | FloatStructFieldConfig | IntStructFieldConfig | StringStructFieldConfig | TextStructFieldConfig; /** Indicates that an operation succeeded, where we do not want to return any more specific information. */ export type Success = { __typename?: 'Success'; success: Scalars['Boolean']['output']; }; export type Surcharge = Node & { __typename?: 'Surcharge'; createdAt: Scalars['DateTime']['output']; description: Scalars['String']['output']; id: Scalars['ID']['output']; price: Scalars['Money']['output']; priceWithTax: Scalars['Money']['output']; sku?: Maybe; taxLines: Array; taxRate: Scalars['Float']['output']; updatedAt: Scalars['DateTime']['output']; }; export type SurchargeInput = { description: Scalars['String']['input']; price: Scalars['Money']['input']; priceIncludesTax: Scalars['Boolean']['input']; sku?: InputMaybe; taxDescription?: InputMaybe; taxRate?: InputMaybe; }; export type Tag = Node & { __typename?: 'Tag'; createdAt: Scalars['DateTime']['output']; id: Scalars['ID']['output']; updatedAt: Scalars['DateTime']['output']; value: Scalars['String']['output']; }; export type TagFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; id?: InputMaybe; updatedAt?: InputMaybe; value?: InputMaybe; }; export type TagList = PaginatedList & { __typename?: 'TagList'; items: Array; totalItems: Scalars['Int']['output']; }; export type TagListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type TagSortParameter = { createdAt?: InputMaybe; id?: InputMaybe; updatedAt?: InputMaybe; value?: InputMaybe; }; export type TaxCategory = Node & { __typename?: 'TaxCategory'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; isDefault: Scalars['Boolean']['output']; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type TaxCategoryFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; id?: InputMaybe; isDefault?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type TaxCategoryList = PaginatedList & { __typename?: 'TaxCategoryList'; items: Array; totalItems: Scalars['Int']['output']; }; export type TaxCategoryListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type TaxCategorySortParameter = { createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type TaxLine = { __typename?: 'TaxLine'; description: Scalars['String']['output']; taxRate: Scalars['Float']['output']; }; export type TaxRate = Node & { __typename?: 'TaxRate'; category: TaxCategory; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; customerGroup?: Maybe; enabled: Scalars['Boolean']['output']; id: Scalars['ID']['output']; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; value: Scalars['Float']['output']; zone: Zone; }; export type TaxRateFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; enabled?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; value?: InputMaybe; }; export type TaxRateList = PaginatedList & { __typename?: 'TaxRateList'; items: Array; totalItems: Scalars['Int']['output']; }; export type TaxRateListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type TaxRateSortParameter = { createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; value?: InputMaybe; }; export type TestEligibleShippingMethodsInput = { lines: Array; shippingAddress: CreateAddressInput; }; export type TestShippingMethodInput = { calculator: ConfigurableOperationInput; checker: ConfigurableOperationInput; lines: Array; shippingAddress: CreateAddressInput; }; export type TestShippingMethodOrderLineInput = { productVariantId: Scalars['ID']['input']; quantity: Scalars['Int']['input']; }; export type TestShippingMethodQuote = { __typename?: 'TestShippingMethodQuote'; metadata?: Maybe; price: Scalars['Money']['output']; priceWithTax: Scalars['Money']['output']; }; export type TestShippingMethodResult = { __typename?: 'TestShippingMethodResult'; eligible: Scalars['Boolean']['output']; quote?: Maybe; }; export type TextCustomFieldConfig = CustomField & { __typename?: 'TextCustomFieldConfig'; description?: Maybe>; internal?: Maybe; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; nullable?: Maybe; readonly?: Maybe; requiresPermission?: Maybe>; type: Scalars['String']['output']; ui?: Maybe; }; export type TextStructFieldConfig = StructField & { __typename?: 'TextStructFieldConfig'; description?: Maybe>; label?: Maybe>; list: Scalars['Boolean']['output']; name: Scalars['String']['output']; type: Scalars['String']['output']; ui?: Maybe; }; export type TransitionFulfillmentToStateResult = Fulfillment | FulfillmentStateTransitionError; export type TransitionOrderToStateResult = Order | OrderStateTransitionError; export type TransitionPaymentToStateResult = Payment | PaymentStateTransitionError; export type UpdateActiveAdministratorInput = { customFields?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; lastName?: InputMaybe; password?: InputMaybe; }; /** * Input used to update an Address. * * The countryCode must correspond to a `code` property of a Country that has been defined in the * Vendure server. The `code` property is typically a 2-character ISO code such as "GB", "US", "DE" etc. * If an invalid code is passed, the mutation will fail. */ export type UpdateAddressInput = { city?: InputMaybe; company?: InputMaybe; countryCode?: InputMaybe; customFields?: InputMaybe; defaultBillingAddress?: InputMaybe; defaultShippingAddress?: InputMaybe; fullName?: InputMaybe; id: Scalars['ID']['input']; phoneNumber?: InputMaybe; postalCode?: InputMaybe; province?: InputMaybe; streetLine1?: InputMaybe; streetLine2?: InputMaybe; }; export type UpdateAdministratorInput = { customFields?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; id: Scalars['ID']['input']; lastName?: InputMaybe; password?: InputMaybe; roleIds?: InputMaybe>; }; export type UpdateAssetInput = { customFields?: InputMaybe; focalPoint?: InputMaybe; id: Scalars['ID']['input']; name?: InputMaybe; tags?: InputMaybe>; }; export type UpdateChannelInput = { availableCurrencyCodes?: InputMaybe>; availableLanguageCodes?: InputMaybe>; code?: InputMaybe; /** @deprecated Use defaultCurrencyCode instead */ currencyCode?: InputMaybe; customFields?: InputMaybe; defaultCurrencyCode?: InputMaybe; defaultLanguageCode?: InputMaybe; defaultShippingZoneId?: InputMaybe; defaultTaxZoneId?: InputMaybe; id: Scalars['ID']['input']; outOfStockThreshold?: InputMaybe; pricesIncludeTax?: InputMaybe; sellerId?: InputMaybe; token?: InputMaybe; trackInventory?: InputMaybe; }; export type UpdateChannelResult = Channel | LanguageNotAvailableError; export type UpdateCollectionInput = { assetIds?: InputMaybe>; customFields?: InputMaybe; featuredAssetId?: InputMaybe; filters?: InputMaybe>; id: Scalars['ID']['input']; inheritFilters?: InputMaybe; isPrivate?: InputMaybe; parentId?: InputMaybe; translations?: InputMaybe>; }; export type UpdateCollectionTranslationInput = { customFields?: InputMaybe; description?: InputMaybe; id?: InputMaybe; languageCode: LanguageCode; name?: InputMaybe; slug?: InputMaybe; }; export type UpdateCountryInput = { code?: InputMaybe; customFields?: InputMaybe; enabled?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateCustomerGroupInput = { customFields?: InputMaybe; id: Scalars['ID']['input']; name?: InputMaybe; }; export type UpdateCustomerInput = { customFields?: InputMaybe; emailAddress?: InputMaybe; firstName?: InputMaybe; id: Scalars['ID']['input']; lastName?: InputMaybe; phoneNumber?: InputMaybe; title?: InputMaybe; }; export type UpdateCustomerNoteInput = { note: Scalars['String']['input']; noteId: Scalars['ID']['input']; }; export type UpdateCustomerResult = Customer | EmailAddressConflictError; export type UpdateFacetInput = { code?: InputMaybe; customFields?: InputMaybe; id: Scalars['ID']['input']; isPrivate?: InputMaybe; translations?: InputMaybe>; }; export type UpdateFacetValueInput = { code?: InputMaybe; customFields?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateGlobalSettingsInput = { availableLanguages?: InputMaybe>; customFields?: InputMaybe; outOfStockThreshold?: InputMaybe; trackInventory?: InputMaybe; }; export type UpdateGlobalSettingsResult = ChannelDefaultLanguageError | GlobalSettings; export type UpdateOrderAddressInput = { city?: InputMaybe; company?: InputMaybe; countryCode?: InputMaybe; fullName?: InputMaybe; phoneNumber?: InputMaybe; postalCode?: InputMaybe; province?: InputMaybe; streetLine1?: InputMaybe; streetLine2?: InputMaybe; }; export type UpdateOrderInput = { customFields?: InputMaybe; id: Scalars['ID']['input']; }; export type UpdateOrderItemsResult = InsufficientStockError | NegativeQuantityError | Order | OrderInterceptorError | OrderLimitError | OrderModificationError; export type UpdateOrderNoteInput = { isPublic?: InputMaybe; note?: InputMaybe; noteId: Scalars['ID']['input']; }; export type UpdatePaymentMethodInput = { checker?: InputMaybe; code?: InputMaybe; customFields?: InputMaybe; enabled?: InputMaybe; handler?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateProductInput = { assetIds?: InputMaybe>; customFields?: InputMaybe; enabled?: InputMaybe; facetValueIds?: InputMaybe>; featuredAssetId?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateProductOptionGroupInput = { code?: InputMaybe; customFields?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateProductOptionInput = { code?: InputMaybe; customFields?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateProductVariantInput = { assetIds?: InputMaybe>; customFields?: InputMaybe; enabled?: InputMaybe; facetValueIds?: InputMaybe>; featuredAssetId?: InputMaybe; id: Scalars['ID']['input']; optionIds?: InputMaybe>; outOfStockThreshold?: InputMaybe; /** Sets the price for the ProductVariant in the Channel's default currency */ price?: InputMaybe; /** Allows multiple prices to be set for the ProductVariant in different currencies. */ prices?: InputMaybe>; sku?: InputMaybe; stockLevels?: InputMaybe>; stockOnHand?: InputMaybe; taxCategoryId?: InputMaybe; trackInventory?: InputMaybe; translations?: InputMaybe>; useGlobalOutOfStockThreshold?: InputMaybe; }; /** * Used to set up update the price of a ProductVariant in a particular Channel. * If the `delete` flag is `true`, the price will be deleted for the given Channel. */ export type UpdateProductVariantPriceInput = { currencyCode: CurrencyCode; customFields?: InputMaybe; delete?: InputMaybe; price: Scalars['Money']['input']; }; export type UpdatePromotionInput = { actions?: InputMaybe>; conditions?: InputMaybe>; couponCode?: InputMaybe; customFields?: InputMaybe; enabled?: InputMaybe; endsAt?: InputMaybe; id: Scalars['ID']['input']; perCustomerUsageLimit?: InputMaybe; startsAt?: InputMaybe; translations?: InputMaybe>; usageLimit?: InputMaybe; }; export type UpdatePromotionResult = MissingConditionsError | Promotion; export type UpdateProvinceInput = { code?: InputMaybe; customFields?: InputMaybe; enabled?: InputMaybe; id: Scalars['ID']['input']; translations?: InputMaybe>; }; export type UpdateRoleInput = { channelIds?: InputMaybe>; code?: InputMaybe; description?: InputMaybe; id: Scalars['ID']['input']; permissions?: InputMaybe>; }; export type UpdateScheduledTaskInput = { enabled?: InputMaybe; id: Scalars['String']['input']; }; export type UpdateSellerInput = { customFields?: InputMaybe; id: Scalars['ID']['input']; name?: InputMaybe; }; export type UpdateShippingMethodInput = { calculator?: InputMaybe; checker?: InputMaybe; code?: InputMaybe; customFields?: InputMaybe; fulfillmentHandler?: InputMaybe; id: Scalars['ID']['input']; translations: Array; }; export type UpdateStockLocationInput = { customFields?: InputMaybe; description?: InputMaybe; id: Scalars['ID']['input']; name?: InputMaybe; }; export type UpdateTagInput = { id: Scalars['ID']['input']; value?: InputMaybe; }; export type UpdateTaxCategoryInput = { customFields?: InputMaybe; id: Scalars['ID']['input']; isDefault?: InputMaybe; name?: InputMaybe; }; export type UpdateTaxRateInput = { categoryId?: InputMaybe; customFields?: InputMaybe; customerGroupId?: InputMaybe; enabled?: InputMaybe; id: Scalars['ID']['input']; name?: InputMaybe; value?: InputMaybe; zoneId?: InputMaybe; }; export type UpdateZoneInput = { customFields?: InputMaybe; id: Scalars['ID']['input']; name?: InputMaybe; }; export type User = Node & { __typename?: 'User'; authenticationMethods: Array; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; identifier: Scalars['String']['output']; lastLogin?: Maybe; roles: Array; updatedAt: Scalars['DateTime']['output']; verified: Scalars['Boolean']['output']; }; export type Zone = Node & { __typename?: 'Zone'; createdAt: Scalars['DateTime']['output']; customFields?: Maybe; id: Scalars['ID']['output']; members: Array; name: Scalars['String']['output']; updatedAt: Scalars['DateTime']['output']; }; export type ZoneFilterParameter = { _and?: InputMaybe>; _or?: InputMaybe>; createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; }; export type ZoneList = PaginatedList & { __typename?: 'ZoneList'; items: Array; totalItems: Scalars['Int']['output']; }; export type ZoneListOptions = { /** Allows the results to be filtered */ filter?: InputMaybe; /** Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND. */ filterOperator?: InputMaybe; /** Skips the first n results, for use in pagination */ skip?: InputMaybe; /** Specifies which properties to sort the results by */ sort?: InputMaybe; /** Takes n results, for use in pagination */ take?: InputMaybe; }; export type ZoneSortParameter = { createdAt?: InputMaybe; id?: InputMaybe; name?: InputMaybe; updatedAt?: InputMaybe; };