// tslint:disable export type Maybe = T | null; export type Exact = { [K in keyof T]: T[K] }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: string; String: string; Boolean: boolean; Int: number; Float: number; /** A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar. */ DateTime: any; /** The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */ JSON: any; /** The `Upload` scalar type represents a file upload. */ Upload: any; }; export type AddNoteToCustomerInput = { id: Scalars['ID']; note: Scalars['String']; isPublic: Scalars['Boolean']; }; export type AddNoteToOrderInput = { id: Scalars['ID']; note: Scalars['String']; isPublic: Scalars['Boolean']; }; export type Address = Node & { __typename?: 'Address'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; fullName?: Maybe; company?: Maybe; streetLine1: Scalars['String']; streetLine2?: Maybe; city?: Maybe; province?: Maybe; postalCode?: Maybe; country: Country; phoneNumber?: Maybe; defaultShippingAddress?: Maybe; defaultBillingAddress?: Maybe; customFields?: Maybe; }; export type Adjustment = { __typename?: 'Adjustment'; adjustmentSource: Scalars['String']; type: AdjustmentType; description: Scalars['String']; amount: Scalars['Int']; }; export enum AdjustmentType { Tax = 'TAX', Promotion = 'PROMOTION', Shipping = 'SHIPPING', Refund = 'REFUND', TaxRefund = 'TAX_REFUND', PromotionRefund = 'PROMOTION_REFUND', ShippingRefund = 'SHIPPING_REFUND' } export type Administrator = Node & { __typename?: 'Administrator'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; firstName: Scalars['String']; lastName: Scalars['String']; emailAddress: Scalars['String']; user: User; }; export type AdministratorFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; firstName?: Maybe; lastName?: Maybe; emailAddress?: Maybe; }; export type AdministratorList = PaginatedList & { __typename?: 'AdministratorList'; items: Array; totalItems: Scalars['Int']; }; export type AdministratorListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type AdministratorSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; firstName?: Maybe; lastName?: Maybe; emailAddress?: Maybe; }; export type Asset = Node & { __typename?: 'Asset'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; name: Scalars['String']; type: AssetType; fileSize: Scalars['Int']; mimeType: Scalars['String']; width: Scalars['Int']; height: Scalars['Int']; source: Scalars['String']; preview: Scalars['String']; focalPoint?: Maybe; }; export type AssetFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; type?: Maybe; fileSize?: Maybe; mimeType?: Maybe; width?: Maybe; height?: Maybe; source?: Maybe; preview?: Maybe; }; export type AssetList = PaginatedList & { __typename?: 'AssetList'; items: Array; totalItems: Scalars['Int']; }; export type AssetListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type AssetSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; fileSize?: Maybe; mimeType?: Maybe; width?: Maybe; height?: Maybe; source?: Maybe; preview?: Maybe; }; export enum AssetType { Image = 'IMAGE', Video = 'VIDEO', Binary = 'BINARY' } export type AssignProductsToChannelInput = { productIds: Array; channelId: Scalars['ID']; priceFactor?: Maybe; }; export type BooleanCustomFieldConfig = CustomField & { __typename?: 'BooleanCustomFieldConfig'; name: Scalars['String']; type: Scalars['String']; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; }; export type BooleanOperators = { eq?: Maybe; }; export type BulkDiscount = { __typename?: 'BulkDiscount'; productVariant: ProductVariant; quantity: Scalars['Int']; price: Scalars['Int']; }; export type BulkDiscountInput = { quantity: Scalars['Int']; price: Scalars['Int']; }; export type Cancellation = Node & StockMovement & { __typename?: 'Cancellation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; productVariant: ProductVariant; type: StockMovementType; quantity: Scalars['Int']; orderLine: OrderLine; }; export type CancelOrderInput = { /** The id of the order to be cancelled */ orderId: Scalars['ID']; /** Optionally specify which OrderLines to cancel. If not provided, all OrderLines will be cancelled */ lines?: Maybe>; reason?: Maybe; }; export type Channel = Node & { __typename?: 'Channel'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; code: Scalars['String']; token: Scalars['String']; defaultTaxZone?: Maybe; defaultShippingZone?: Maybe; defaultLanguageCode: LanguageCode; currencyCode: CurrencyCode; pricesIncludeTax: Scalars['Boolean']; }; export type Collection = Node & { __typename?: 'Collection'; isPrivate: Scalars['Boolean']; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode?: Maybe; name: Scalars['String']; slug: Scalars['String']; breadcrumbs: Array; position: Scalars['Int']; description: Scalars['String']; featuredAsset?: Maybe; assets: Array; parent?: Maybe; children?: Maybe>; filters: Array; translations: Array; productVariants: ProductVariantList; customFields?: Maybe; }; export type CollectionProductVariantsArgs = { options?: Maybe; }; export type CollectionBreadcrumb = { __typename?: 'CollectionBreadcrumb'; id: Scalars['ID']; name: Scalars['String']; slug: Scalars['String']; }; export type CollectionFilterParameter = { isPrivate?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; languageCode?: Maybe; name?: Maybe; slug?: Maybe; position?: Maybe; description?: Maybe; }; export type CollectionList = PaginatedList & { __typename?: 'CollectionList'; items: Array; totalItems: Scalars['Int']; }; export type CollectionListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type CollectionSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; slug?: Maybe; position?: Maybe; description?: Maybe; }; export type CollectionTranslation = { __typename?: 'CollectionTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; slug: Scalars['String']; description: Scalars['String']; }; export type ConfigArg = { __typename?: 'ConfigArg'; name: Scalars['String']; type: Scalars['String']; value: Scalars['String']; }; export type ConfigArgDefinition = { __typename?: 'ConfigArgDefinition'; name: Scalars['String']; type: Scalars['String']; label?: Maybe; description?: Maybe; config?: Maybe; }; export type ConfigArgInput = { name: Scalars['String']; type: Scalars['String']; value: Scalars['String']; }; export type ConfigurableOperation = { __typename?: 'ConfigurableOperation'; code: Scalars['String']; args: Array; }; export type ConfigurableOperationDefinition = { __typename?: 'ConfigurableOperationDefinition'; code: Scalars['String']; args: Array; description: Scalars['String']; }; export type ConfigurableOperationInput = { code: Scalars['String']; arguments: Array; }; export type Coordinate = { __typename?: 'Coordinate'; x: Scalars['Float']; y: Scalars['Float']; }; export type CoordinateInput = { x: Scalars['Float']; y: Scalars['Float']; }; export type Country = Node & { __typename?: 'Country'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; code: Scalars['String']; name: Scalars['String']; enabled: Scalars['Boolean']; translations: Array; }; export type CountryFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; languageCode?: Maybe; code?: Maybe; name?: Maybe; enabled?: Maybe; }; export type CountryList = PaginatedList & { __typename?: 'CountryList'; items: Array; totalItems: Scalars['Int']; }; export type CountryListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type CountrySortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; name?: Maybe; }; export type CountryTranslation = { __typename?: 'CountryTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; }; export type CountryTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; }; export type CreateAddressInput = { fullName?: Maybe; company?: Maybe; streetLine1: Scalars['String']; streetLine2?: Maybe; city?: Maybe; province?: Maybe; postalCode?: Maybe; countryCode: Scalars['String']; phoneNumber?: Maybe; defaultShippingAddress?: Maybe; defaultBillingAddress?: Maybe; customFields?: Maybe; }; export type CreateAdministratorInput = { firstName: Scalars['String']; lastName: Scalars['String']; emailAddress: Scalars['String']; password: Scalars['String']; roleIds: Array; }; export type CreateAssetInput = { file: Scalars['Upload']; }; export type CreateChannelInput = { code: Scalars['String']; token: Scalars['String']; defaultLanguageCode: LanguageCode; pricesIncludeTax: Scalars['Boolean']; currencyCode: CurrencyCode; defaultTaxZoneId: Scalars['ID']; defaultShippingZoneId: Scalars['ID']; }; export type CreateCollectionInput = { isPrivate?: Maybe; featuredAssetId?: Maybe; assetIds?: Maybe>; parentId?: Maybe; filters: Array; translations: Array; customFields?: Maybe; }; export type CreateCollectionTranslationInput = { languageCode: LanguageCode; name: Scalars['String']; slug: Scalars['String']; description: Scalars['String']; customFields?: Maybe; }; export type CreateCountryInput = { code: Scalars['String']; translations: Array; enabled: Scalars['Boolean']; }; export type CreateCustomerGroupInput = { name: Scalars['String']; customerIds?: Maybe>; }; export type CreateCustomerInput = { title?: Maybe; firstName: Scalars['String']; lastName: Scalars['String']; phoneNumber?: Maybe; emailAddress: Scalars['String']; customFields?: Maybe; }; export type CreateFacetInput = { code: Scalars['String']; isPrivate: Scalars['Boolean']; translations: Array; values?: Maybe>; customFields?: Maybe; }; export type CreateFacetValueInput = { facetId: Scalars['ID']; code: Scalars['String']; translations: Array; customFields?: Maybe; }; export type CreateFacetValueWithFacetInput = { code: Scalars['String']; translations: Array; }; export type CreateGroupOptionInput = { code: Scalars['String']; translations: Array; }; export type CreateProductCustomFieldsInput = { productRecommendationsEnabled?: Maybe; reviewRating?: Maybe; reviewCount?: Maybe; }; export type CreateProductInput = { featuredAssetId?: Maybe; assetIds?: Maybe>; facetValueIds?: Maybe>; translations: Array; customFields?: Maybe; }; export type CreateProductOptionGroupInput = { code: Scalars['String']; translations: Array; options: Array; customFields?: Maybe; }; export type CreateProductOptionInput = { productOptionGroupId: Scalars['ID']; code: Scalars['String']; translations: Array; customFields?: Maybe; }; export type CreateProductVariantCustomFieldsInput = { bulkDiscountEnabled?: Maybe; Unit?: Maybe; Sales?: Maybe; }; export type CreateProductVariantInput = { productId: Scalars['ID']; translations: Array; facetValueIds?: Maybe>; sku: Scalars['String']; price?: Maybe; taxCategoryId?: Maybe; optionIds?: Maybe>; featuredAssetId?: Maybe; assetIds?: Maybe>; stockOnHand?: Maybe; trackInventory?: Maybe; customFields?: Maybe; }; export type CreateProductVariantOptionInput = { optionGroupId: Scalars['ID']; code: Scalars['String']; translations: Array; }; export type CreatePromotionInput = { name: Scalars['String']; enabled: Scalars['Boolean']; startsAt?: Maybe; endsAt?: Maybe; couponCode?: Maybe; perCustomerUsageLimit?: Maybe; conditions: Array; actions: Array; }; export type CreateRoleInput = { code: Scalars['String']; description: Scalars['String']; permissions: Array; channelIds?: Maybe>; }; export type CreateShippingMethodInput = { code: Scalars['String']; description: Scalars['String']; checker: ConfigurableOperationInput; calculator: ConfigurableOperationInput; }; export type CreateTaxCategoryInput = { name: Scalars['String']; }; export type CreateTaxRateInput = { name: Scalars['String']; enabled: Scalars['Boolean']; value: Scalars['Float']; categoryId: Scalars['ID']; zoneId: Scalars['ID']; customerGroupId?: Maybe; }; export type CreateZoneInput = { name: Scalars['String']; memberIds?: Maybe>; }; /** * @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'; id: Scalars['ID']; identifier: Scalars['String']; channels: Array; }; export type CurrentUserChannel = { __typename?: 'CurrentUserChannel'; id: Scalars['ID']; token: Scalars['String']; code: Scalars['String']; permissions: Array; }; export type Customer = Node & { __typename?: 'Customer'; groups: Array; history: HistoryEntryList; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; title?: Maybe; firstName: Scalars['String']; lastName: Scalars['String']; phoneNumber?: Maybe; emailAddress: Scalars['String']; addresses?: Maybe>; orders: OrderList; user?: Maybe; customFields?: Maybe; }; export type CustomerHistoryArgs = { options?: Maybe; }; export type CustomerOrdersArgs = { options?: Maybe; }; export type CustomerFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; title?: Maybe; firstName?: Maybe; lastName?: Maybe; phoneNumber?: Maybe; emailAddress?: Maybe; }; export type CustomerGroup = Node & { __typename?: 'CustomerGroup'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; name: Scalars['String']; customers: CustomerList; }; export type CustomerGroupCustomersArgs = { options?: Maybe; }; export type CustomerGroupFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; }; export type CustomerGroupList = PaginatedList & { __typename?: 'CustomerGroupList'; items: Array; totalItems: Scalars['Int']; }; export type CustomerGroupListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type CustomerGroupSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; }; export type CustomerList = PaginatedList & { __typename?: 'CustomerList'; items: Array; totalItems: Scalars['Int']; }; export type CustomerListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type CustomerSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; title?: Maybe; firstName?: Maybe; lastName?: Maybe; phoneNumber?: Maybe; emailAddress?: Maybe; }; export type CustomField = { name: Scalars['String']; type: Scalars['String']; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; }; export type CustomFieldConfig = StringCustomFieldConfig | LocaleStringCustomFieldConfig | IntCustomFieldConfig | FloatCustomFieldConfig | BooleanCustomFieldConfig | DateTimeCustomFieldConfig; export type CustomFields = { __typename?: 'CustomFields'; Address: Array; Collection: Array; Customer: Array; Facet: Array; FacetValue: Array; GlobalSettings: Array; Order: Array; OrderLine: Array; Product: Array; ProductOption: Array; ProductOptionGroup: Array; ProductVariant: Array; User: Array; }; export type DateOperators = { eq?: Maybe; before?: Maybe; after?: Maybe; between?: Maybe; }; export type DateRange = { start: Scalars['DateTime']; end: Scalars['DateTime']; }; /** * 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'; name: Scalars['String']; type: Scalars['String']; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; min?: Maybe; max?: Maybe; step?: Maybe; }; export type DeletionResponse = { __typename?: 'DeletionResponse'; result: DeletionResult; message?: Maybe; }; export enum DeletionResult { /** The entity was successfully deleted */ Deleted = 'DELETED', /** Deletion did not take place, reason given in message */ NotDeleted = 'NOT_DELETED' } export type Email = Node & { __typename?: 'Email'; id: Scalars['ID']; email: Scalars['String']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; }; export type EmailAddInput = { email: Scalars['String']; }; export type EmailFilterParameter = { email?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; }; export type EmailList = PaginatedList & { __typename?: 'EmailList'; items: Array; totalItems: Scalars['Int']; }; export type EmailListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type EmailSortParameter = { id?: Maybe; email?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; }; export type EmailUpdateInput = { id: Scalars['ID']; email: Scalars['String']; }; export type Facet = Node & { __typename?: 'Facet'; isPrivate: Scalars['Boolean']; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; code: Scalars['String']; values: Array; translations: Array; customFields?: Maybe; }; export type FacetFilterParameter = { isPrivate?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; languageCode?: Maybe; name?: Maybe; code?: Maybe; }; export type FacetList = PaginatedList & { __typename?: 'FacetList'; items: Array; totalItems: Scalars['Int']; }; export type FacetListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type FacetSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; code?: Maybe; }; export type FacetTranslation = { __typename?: 'FacetTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; }; export type FacetTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; customFields?: Maybe; }; export type FacetValue = Node & { __typename?: 'FacetValue'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; facet: Facet; name: Scalars['String']; code: Scalars['String']; translations: Array; customFields?: Maybe; }; /** * Which FacetValues are present in the products returned * by the search, and in what quantity. */ export type FacetValueResult = { __typename?: 'FacetValueResult'; facetValue: FacetValue; count: Scalars['Int']; }; export type FacetValueTranslation = { __typename?: 'FacetValueTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; }; export type FacetValueTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; customFields?: Maybe; }; export type FloatCustomFieldConfig = CustomField & { __typename?: 'FloatCustomFieldConfig'; name: Scalars['String']; type: Scalars['String']; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; min?: Maybe; max?: Maybe; step?: Maybe; }; export type Fulfillment = Node & { __typename?: 'Fulfillment'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; orderItems: Array; method: Scalars['String']; trackingCode?: Maybe; }; export type FulfillOrderInput = { lines: Array; method: Scalars['String']; trackingCode?: Maybe; }; export type GlobalSettings = { __typename?: 'GlobalSettings'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; availableLanguages: Array; trackInventory: Scalars['Boolean']; serverConfig: ServerConfig; customFields?: Maybe; }; export type HistoryEntry = Node & { __typename?: 'HistoryEntry'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; isPublic: Scalars['Boolean']; type: HistoryEntryType; administrator?: Maybe; data: Scalars['JSON']; }; export type HistoryEntryFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; isPublic?: Maybe; type?: Maybe; }; export type HistoryEntryList = PaginatedList & { __typename?: 'HistoryEntryList'; items: Array; totalItems: Scalars['Int']; }; export type HistoryEntryListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type HistoryEntrySortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; }; export enum HistoryEntryType { CustomerRegistered = 'CUSTOMER_REGISTERED', CustomerVerified = 'CUSTOMER_VERIFIED', CustomerDetailUpdated = 'CUSTOMER_DETAIL_UPDATED', CustomerAddedToGroup = 'CUSTOMER_ADDED_TO_GROUP', CustomerRemovedFromGroup = 'CUSTOMER_REMOVED_FROM_GROUP', CustomerAddressCreated = 'CUSTOMER_ADDRESS_CREATED', CustomerAddressUpdated = 'CUSTOMER_ADDRESS_UPDATED', CustomerAddressDeleted = 'CUSTOMER_ADDRESS_DELETED', CustomerPasswordUpdated = 'CUSTOMER_PASSWORD_UPDATED', CustomerPasswordResetRequested = 'CUSTOMER_PASSWORD_RESET_REQUESTED', CustomerPasswordResetVerified = 'CUSTOMER_PASSWORD_RESET_VERIFIED', CustomerEmailUpdateRequested = 'CUSTOMER_EMAIL_UPDATE_REQUESTED', CustomerEmailUpdateVerified = 'CUSTOMER_EMAIL_UPDATE_VERIFIED', CustomerNote = 'CUSTOMER_NOTE', OrderStateTransition = 'ORDER_STATE_TRANSITION', OrderPaymentTransition = 'ORDER_PAYMENT_TRANSITION', OrderFullfillment = 'ORDER_FULLFILLMENT', OrderCancellation = 'ORDER_CANCELLATION', OrderRefundTransition = 'ORDER_REFUND_TRANSITION', OrderNote = 'ORDER_NOTE', OrderCouponApplied = 'ORDER_COUPON_APPLIED', OrderCouponRemoved = 'ORDER_COUPON_REMOVED' } export type ImportInfo = { __typename?: 'ImportInfo'; errors?: Maybe>; processed: Scalars['Int']; imported: Scalars['Int']; }; export type IntCustomFieldConfig = CustomField & { __typename?: 'IntCustomFieldConfig'; name: Scalars['String']; type: Scalars['String']; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; min?: Maybe; max?: Maybe; step?: Maybe; }; export type Job = Node & { __typename?: 'Job'; id: Scalars['ID']; createdAt: Scalars['DateTime']; startedAt?: Maybe; settledAt?: Maybe; queueName: Scalars['String']; state: JobState; progress: Scalars['Float']; data?: Maybe; result?: Maybe; error?: Maybe; isSettled: Scalars['Boolean']; duration: Scalars['Int']; }; export type JobFilterParameter = { createdAt?: Maybe; startedAt?: Maybe; settledAt?: Maybe; queueName?: Maybe; state?: Maybe; progress?: Maybe; isSettled?: Maybe; duration?: Maybe; }; export type JobList = PaginatedList & { __typename?: 'JobList'; items: Array; totalItems: Scalars['Int']; }; export type JobListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type JobQueue = { __typename?: 'JobQueue'; name: Scalars['String']; running: Scalars['Boolean']; }; export type JobSortParameter = { id?: Maybe; createdAt?: Maybe; startedAt?: Maybe; settledAt?: Maybe; queueName?: Maybe; progress?: Maybe; duration?: Maybe; }; /** * @description * The state of a Job in the JobQueue * * @docsCategory common */ export enum JobState { Pending = 'PENDING', Running = 'RUNNING', Completed = 'COMPLETED', Retrying = 'RETRYING', Failed = 'FAILED' } /** * @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', /** Albanian */ Sq = 'sq', /** Amharic */ Am = 'am', /** Arabic */ Ar = 'ar', /** Armenian */ Hy = 'hy', /** Assamese */ As = 'as', /** Azerbaijani */ Az = 'az', /** Bambara */ Bm = 'bm', /** Bangla */ Bn = 'bn', /** Basque */ Eu = 'eu', /** Belarusian */ Be = 'be', /** Bosnian */ Bs = 'bs', /** Breton */ Br = 'br', /** Bulgarian */ Bg = 'bg', /** Burmese */ My = 'my', /** Catalan */ Ca = 'ca', /** Chechen */ Ce = 'ce', /** Chinese */ Zh = 'zh', /** Simplified Chinese */ ZhHans = 'zh_Hans', /** Traditional Chinese */ ZhHant = 'zh_Hant', /** Church Slavic */ Cu = 'cu', /** Cornish */ Kw = 'kw', /** Corsican */ Co = 'co', /** Croatian */ Hr = 'hr', /** Czech */ Cs = 'cs', /** Danish */ Da = 'da', /** Dutch */ Nl = 'nl', /** Flemish */ NlBe = 'nl_BE', /** Dzongkha */ Dz = 'dz', /** English */ En = 'en', /** Australian English */ EnAu = 'en_AU', /** Canadian English */ EnCa = 'en_CA', /** British English */ EnGb = 'en_GB', /** American English */ EnUs = 'en_US', /** Esperanto */ Eo = 'eo', /** Estonian */ Et = 'et', /** Ewe */ Ee = 'ee', /** Faroese */ Fo = 'fo', /** Finnish */ Fi = 'fi', /** French */ Fr = 'fr', /** Canadian French */ FrCa = 'fr_CA', /** Swiss French */ FrCh = 'fr_CH', /** Fulah */ Ff = 'ff', /** Galician */ Gl = 'gl', /** Ganda */ Lg = 'lg', /** Georgian */ Ka = 'ka', /** German */ De = 'de', /** Austrian German */ DeAt = 'de_AT', /** Swiss High German */ DeCh = 'de_CH', /** Greek */ El = 'el', /** Gujarati */ Gu = 'gu', /** Haitian Creole */ Ht = 'ht', /** Hausa */ Ha = 'ha', /** Hebrew */ He = 'he', /** Hindi */ Hi = 'hi', /** Hungarian */ Hu = 'hu', /** Icelandic */ Is = 'is', /** Igbo */ Ig = 'ig', /** Indonesian */ Id = 'id', /** Interlingua */ Ia = 'ia', /** Irish */ Ga = 'ga', /** Italian */ It = 'it', /** Japanese */ Ja = 'ja', /** Javanese */ Jv = 'jv', /** Kalaallisut */ Kl = 'kl', /** Kannada */ Kn = 'kn', /** Kashmiri */ Ks = 'ks', /** Kazakh */ Kk = 'kk', /** Khmer */ Km = 'km', /** Kikuyu */ Ki = 'ki', /** Kinyarwanda */ Rw = 'rw', /** Korean */ Ko = 'ko', /** Kurdish */ Ku = 'ku', /** Kyrgyz */ Ky = 'ky', /** Lao */ Lo = 'lo', /** Latin */ La = 'la', /** Latvian */ Lv = 'lv', /** Lingala */ Ln = 'ln', /** Lithuanian */ Lt = 'lt', /** Luba-Katanga */ Lu = 'lu', /** Luxembourgish */ Lb = 'lb', /** Macedonian */ Mk = 'mk', /** Malagasy */ Mg = 'mg', /** Malay */ Ms = 'ms', /** Malayalam */ Ml = 'ml', /** Maltese */ Mt = 'mt', /** Manx */ Gv = 'gv', /** Maori */ Mi = 'mi', /** Marathi */ Mr = 'mr', /** Mongolian */ Mn = 'mn', /** Nepali */ Ne = 'ne', /** North Ndebele */ Nd = 'nd', /** Northern Sami */ Se = 'se', /** Norwegian Bokmål */ Nb = 'nb', /** Norwegian Nynorsk */ Nn = 'nn', /** Nyanja */ Ny = 'ny', /** Odia */ Or = 'or', /** Oromo */ Om = 'om', /** Ossetic */ Os = 'os', /** Pashto */ Ps = 'ps', /** Persian */ Fa = 'fa', /** Dari */ FaAf = 'fa_AF', /** Polish */ Pl = 'pl', /** Portuguese */ Pt = 'pt', /** Brazilian Portuguese */ PtBr = 'pt_BR', /** European Portuguese */ PtPt = 'pt_PT', /** Punjabi */ Pa = 'pa', /** Quechua */ Qu = 'qu', /** Romanian */ Ro = 'ro', /** Moldavian */ RoMd = 'ro_MD', /** Romansh */ Rm = 'rm', /** Rundi */ Rn = 'rn', /** Russian */ Ru = 'ru', /** Samoan */ Sm = 'sm', /** Sango */ Sg = 'sg', /** Sanskrit */ Sa = 'sa', /** Scottish Gaelic */ Gd = 'gd', /** Serbian */ Sr = 'sr', /** Shona */ Sn = 'sn', /** Sichuan Yi */ Ii = 'ii', /** Sindhi */ Sd = 'sd', /** Sinhala */ Si = 'si', /** Slovak */ Sk = 'sk', /** Slovenian */ Sl = 'sl', /** Somali */ So = 'so', /** Southern Sotho */ St = 'st', /** Spanish */ Es = 'es', /** European Spanish */ EsEs = 'es_ES', /** Mexican Spanish */ EsMx = 'es_MX', /** Sundanese */ Su = 'su', /** Swahili */ Sw = 'sw', /** Congo Swahili */ SwCd = 'sw_CD', /** Swedish */ Sv = 'sv', /** Tajik */ Tg = 'tg', /** Tamil */ Ta = 'ta', /** Tatar */ Tt = 'tt', /** Telugu */ Te = 'te', /** Thai */ Th = 'th', /** Tibetan */ Bo = 'bo', /** Tigrinya */ Ti = 'ti', /** Tongan */ To = 'to', /** Turkish */ Tr = 'tr', /** Turkmen */ Tk = 'tk', /** Ukrainian */ Uk = 'uk', /** Urdu */ Ur = 'ur', /** Uyghur */ Ug = 'ug', /** Uzbek */ Uz = 'uz', /** Vietnamese */ Vi = 'vi', /** Volapük */ Vo = 'vo', /** Welsh */ Cy = 'cy', /** Western Frisian */ Fy = 'fy', /** Wolof */ Wo = 'wo', /** Xhosa */ Xh = 'xh', /** Yiddish */ Yi = 'yi', /** Yoruba */ Yo = 'yo', /** Zulu */ Zu = 'zu' } export type LocaleStringCustomFieldConfig = CustomField & { __typename?: 'LocaleStringCustomFieldConfig'; name: Scalars['String']; type: Scalars['String']; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; pattern?: Maybe; }; export type LocalizedString = { __typename?: 'LocalizedString'; languageCode: LanguageCode; value: Scalars['String']; }; export enum LogicalOperator { And = 'AND', Or = 'OR' } export type LoginResult = { __typename?: 'LoginResult'; user: CurrentUser; }; export type MoveCollectionInput = { collectionId: Scalars['ID']; parentId: Scalars['ID']; index: Scalars['Int']; }; export type Mutation = { __typename?: 'Mutation'; /** Create a new Administrator */ createAdministrator: Administrator; /** Update an existing Administrator */ updateAdministrator: Administrator; /** Assign a Role to an Administrator */ assignRoleToAdministrator: Administrator; /** Create a new Asset */ createAssets: Array; /** Update an existing Asset */ updateAsset: Asset; /** Delete an Asset */ deleteAsset: DeletionResponse; login: LoginResult; logout: Scalars['Boolean']; /** Create a new Channel */ createChannel: Channel; /** Update an existing Channel */ updateChannel: Channel; /** Delete a Channel */ deleteChannel: DeletionResponse; /** Create a new Collection */ createCollection: Collection; /** Update an existing Collection */ updateCollection: Collection; /** Delete a Collection and all of its descendants */ deleteCollection: DeletionResponse; /** Move a Collection to a different parent or index */ moveCollection: Collection; /** Create a new Country */ createCountry: Country; /** Update an existing Country */ updateCountry: Country; /** Delete a Country */ deleteCountry: DeletionResponse; /** Create a new CustomerGroup */ createCustomerGroup: CustomerGroup; /** Update an existing CustomerGroup */ updateCustomerGroup: CustomerGroup; /** Delete a CustomerGroup */ deleteCustomerGroup: DeletionResponse; /** Add Customers to a CustomerGroup */ addCustomersToGroup: CustomerGroup; /** Remove Customers from a CustomerGroup */ removeCustomersFromGroup: CustomerGroup; /** Create a new Customer. If a password is provided, a new User will also be created an linked to the Customer. */ createCustomer: Customer; /** Update an existing Customer */ updateCustomer: Customer; /** Delete a Customer */ deleteCustomer: DeletionResponse; /** Create a new Address and associate it with the Customer specified by customerId */ createCustomerAddress: Address; /** Update an existing Address */ updateCustomerAddress: Address; /** Update an existing Address */ deleteCustomerAddress: Scalars['Boolean']; addNoteToCustomer: Customer; updateCustomerNote: HistoryEntry; deleteCustomerNote: DeletionResponse; /** Create a new Facet */ createFacet: Facet; /** Update an existing Facet */ updateFacet: Facet; /** Delete an existing Facet */ deleteFacet: DeletionResponse; /** Create one or more FacetValues */ createFacetValues: Array; /** Update one or more FacetValues */ updateFacetValues: Array; /** Delete one or more FacetValues */ deleteFacetValues: Array; updateGlobalSettings: GlobalSettings; importProducts?: Maybe; /** Remove all settled jobs in the given queues olfer than the given date. Returns the number of jobs deleted. */ removeSettledJobs: Scalars['Int']; settlePayment: Payment; fulfillOrder: Fulfillment; cancelOrder: Order; refundOrder: Refund; settleRefund: Refund; addNoteToOrder: Order; updateOrderNote: HistoryEntry; deleteOrderNote: DeletionResponse; /** Update an existing PaymentMethod */ updatePaymentMethod: PaymentMethod; /** Create a new ProductOptionGroup */ createProductOptionGroup: ProductOptionGroup; /** Update an existing ProductOptionGroup */ updateProductOptionGroup: ProductOptionGroup; /** Create a new ProductOption within a ProductOptionGroup */ createProductOption: ProductOption; /** Create a new ProductOption within a ProductOptionGroup */ updateProductOption: ProductOption; reindex: Job; /** Create a new Product */ createProduct: Product; /** Update an existing Product */ updateProduct: Product; /** Delete a Product */ deleteProduct: DeletionResponse; /** Add an OptionGroup to a Product */ addOptionGroupToProduct: Product; /** Remove an OptionGroup from a Product */ removeOptionGroupFromProduct: Product; /** Create a set of ProductVariants based on the OptionGroups assigned to the given Product */ createProductVariants: Array>; /** Update existing ProductVariants */ updateProductVariants: Array>; /** Delete a ProductVariant */ deleteProductVariant: DeletionResponse; /** Assigns Products to the specified Channel */ assignProductsToChannel: Array; /** Removes Products from the specified Channel */ removeProductsFromChannel: Array; createPromotion: Promotion; updatePromotion: Promotion; deletePromotion: DeletionResponse; /** Create a new Role */ createRole: Role; /** Update an existing Role */ updateRole: Role; /** Delete an existing Role */ deleteRole: DeletionResponse; /** Create a new ShippingMethod */ createShippingMethod: ShippingMethod; /** Update an existing ShippingMethod */ updateShippingMethod: ShippingMethod; /** Delete a ShippingMethod */ deleteShippingMethod: DeletionResponse; /** Create a new TaxCategory */ createTaxCategory: TaxCategory; /** Update an existing TaxCategory */ updateTaxCategory: TaxCategory; /** Deletes a TaxCategory */ deleteTaxCategory: DeletionResponse; /** Create a new TaxRate */ createTaxRate: TaxRate; /** Update an existing TaxRate */ updateTaxRate: TaxRate; /** Delete a TaxRate */ deleteTaxRate: DeletionResponse; /** Create a new Zone */ createZone: Zone; /** Update an existing Zone */ updateZone: Zone; /** Delete a Zone */ deleteZone: DeletionResponse; /** Add members to a Zone */ addMembersToZone: Zone; /** Remove members from a Zone */ removeMembersFromZone: Zone; updateCrossSellingProducts: Scalars['Boolean']; updateUpSellingProducts: Scalars['Boolean']; updateProductVariantBulkDiscounts: Scalars['Boolean']; updateProductVariantBulkDiscountsBySku: Scalars['Boolean']; updateProductReview: ProductReview; approveProductReview?: Maybe; rejectProductReview?: Maybe; addSubscriptionEmail: Array>; updateSubscriptionEmail: Array>; deleteSubscriptionEmail: Array>; deleteAllSubscriptionEmails: Scalars['Boolean']; addSubscriptionPhone: Array>; updateSubscriptionPhone: Array>; deleteSubscriptionPhone: Array>; deleteAllSubscriptionPhones: Scalars['Boolean']; }; export type MutationCreateAdministratorArgs = { input: CreateAdministratorInput; }; export type MutationUpdateAdministratorArgs = { input: UpdateAdministratorInput; }; export type MutationAssignRoleToAdministratorArgs = { administratorId: Scalars['ID']; roleId: Scalars['ID']; }; export type MutationCreateAssetsArgs = { input: Array; }; export type MutationUpdateAssetArgs = { input: UpdateAssetInput; }; export type MutationDeleteAssetArgs = { id: Scalars['ID']; force?: Maybe; }; export type MutationLoginArgs = { username: Scalars['String']; password: Scalars['String']; rememberMe?: Maybe; }; export type MutationCreateChannelArgs = { input: CreateChannelInput; }; export type MutationUpdateChannelArgs = { input: UpdateChannelInput; }; export type MutationDeleteChannelArgs = { id: Scalars['ID']; }; export type MutationCreateCollectionArgs = { input: CreateCollectionInput; }; export type MutationUpdateCollectionArgs = { input: UpdateCollectionInput; }; export type MutationDeleteCollectionArgs = { id: Scalars['ID']; }; export type MutationMoveCollectionArgs = { input: MoveCollectionInput; }; export type MutationCreateCountryArgs = { input: CreateCountryInput; }; export type MutationUpdateCountryArgs = { input: UpdateCountryInput; }; export type MutationDeleteCountryArgs = { id: Scalars['ID']; }; export type MutationCreateCustomerGroupArgs = { input: CreateCustomerGroupInput; }; export type MutationUpdateCustomerGroupArgs = { input: UpdateCustomerGroupInput; }; export type MutationDeleteCustomerGroupArgs = { id: Scalars['ID']; }; export type MutationAddCustomersToGroupArgs = { customerGroupId: Scalars['ID']; customerIds: Array; }; export type MutationRemoveCustomersFromGroupArgs = { customerGroupId: Scalars['ID']; customerIds: Array; }; export type MutationCreateCustomerArgs = { input: CreateCustomerInput; password?: Maybe; }; export type MutationUpdateCustomerArgs = { input: UpdateCustomerInput; }; export type MutationDeleteCustomerArgs = { id: Scalars['ID']; }; export type MutationCreateCustomerAddressArgs = { customerId: Scalars['ID']; input: CreateAddressInput; }; export type MutationUpdateCustomerAddressArgs = { input: UpdateAddressInput; }; export type MutationDeleteCustomerAddressArgs = { id: Scalars['ID']; }; export type MutationAddNoteToCustomerArgs = { input: AddNoteToCustomerInput; }; export type MutationUpdateCustomerNoteArgs = { input: UpdateCustomerNoteInput; }; export type MutationDeleteCustomerNoteArgs = { id: Scalars['ID']; }; export type MutationCreateFacetArgs = { input: CreateFacetInput; }; export type MutationUpdateFacetArgs = { input: UpdateFacetInput; }; export type MutationDeleteFacetArgs = { id: Scalars['ID']; force?: Maybe; }; export type MutationCreateFacetValuesArgs = { input: Array; }; export type MutationUpdateFacetValuesArgs = { input: Array; }; export type MutationDeleteFacetValuesArgs = { ids: Array; force?: Maybe; }; export type MutationUpdateGlobalSettingsArgs = { input: UpdateGlobalSettingsInput; }; export type MutationImportProductsArgs = { csvFile: Scalars['Upload']; }; export type MutationRemoveSettledJobsArgs = { queueNames?: Maybe>; olderThan?: Maybe; }; export type MutationSettlePaymentArgs = { id: Scalars['ID']; }; export type MutationFulfillOrderArgs = { input: FulfillOrderInput; }; export type MutationCancelOrderArgs = { input: CancelOrderInput; }; export type MutationRefundOrderArgs = { input: RefundOrderInput; }; export type MutationSettleRefundArgs = { input: SettleRefundInput; }; export type MutationAddNoteToOrderArgs = { input: AddNoteToOrderInput; }; export type MutationUpdateOrderNoteArgs = { input: UpdateOrderNoteInput; }; export type MutationDeleteOrderNoteArgs = { id: Scalars['ID']; }; export type MutationUpdatePaymentMethodArgs = { input: UpdatePaymentMethodInput; }; export type MutationCreateProductOptionGroupArgs = { input: CreateProductOptionGroupInput; }; export type MutationUpdateProductOptionGroupArgs = { input: UpdateProductOptionGroupInput; }; export type MutationCreateProductOptionArgs = { input: CreateProductOptionInput; }; export type MutationUpdateProductOptionArgs = { input: UpdateProductOptionInput; }; export type MutationCreateProductArgs = { input: CreateProductInput; }; export type MutationUpdateProductArgs = { input: UpdateProductInput; }; export type MutationDeleteProductArgs = { id: Scalars['ID']; }; export type MutationAddOptionGroupToProductArgs = { productId: Scalars['ID']; optionGroupId: Scalars['ID']; }; export type MutationRemoveOptionGroupFromProductArgs = { productId: Scalars['ID']; optionGroupId: Scalars['ID']; }; export type MutationCreateProductVariantsArgs = { input: Array; }; export type MutationUpdateProductVariantsArgs = { input: Array; }; export type MutationDeleteProductVariantArgs = { id: Scalars['ID']; }; export type MutationAssignProductsToChannelArgs = { input: AssignProductsToChannelInput; }; export type MutationRemoveProductsFromChannelArgs = { input: RemoveProductsFromChannelInput; }; export type MutationCreatePromotionArgs = { input: CreatePromotionInput; }; export type MutationUpdatePromotionArgs = { input: UpdatePromotionInput; }; export type MutationDeletePromotionArgs = { id: Scalars['ID']; }; export type MutationCreateRoleArgs = { input: CreateRoleInput; }; export type MutationUpdateRoleArgs = { input: UpdateRoleInput; }; export type MutationDeleteRoleArgs = { id: Scalars['ID']; }; export type MutationCreateShippingMethodArgs = { input: CreateShippingMethodInput; }; export type MutationUpdateShippingMethodArgs = { input: UpdateShippingMethodInput; }; export type MutationDeleteShippingMethodArgs = { id: Scalars['ID']; }; export type MutationCreateTaxCategoryArgs = { input: CreateTaxCategoryInput; }; export type MutationUpdateTaxCategoryArgs = { input: UpdateTaxCategoryInput; }; export type MutationDeleteTaxCategoryArgs = { id: Scalars['ID']; }; export type MutationCreateTaxRateArgs = { input: CreateTaxRateInput; }; export type MutationUpdateTaxRateArgs = { input: UpdateTaxRateInput; }; export type MutationDeleteTaxRateArgs = { id: Scalars['ID']; }; export type MutationCreateZoneArgs = { input: CreateZoneInput; }; export type MutationUpdateZoneArgs = { input: UpdateZoneInput; }; export type MutationDeleteZoneArgs = { id: Scalars['ID']; }; export type MutationAddMembersToZoneArgs = { zoneId: Scalars['ID']; memberIds: Array; }; export type MutationRemoveMembersFromZoneArgs = { zoneId: Scalars['ID']; memberIds: Array; }; export type MutationUpdateCrossSellingProductsArgs = { productId: Scalars['ID']; productIds: Array; }; export type MutationUpdateUpSellingProductsArgs = { productId: Scalars['ID']; productIds: Array; }; export type MutationUpdateProductVariantBulkDiscountsArgs = { productVariantId: Scalars['ID']; discounts: Array; }; export type MutationUpdateProductVariantBulkDiscountsBySkuArgs = { productVariantSku: Scalars['String']; discounts: Array; }; export type MutationUpdateProductReviewArgs = { input: UpdateProductReviewInput; }; export type MutationApproveProductReviewArgs = { id: Scalars['ID']; }; export type MutationRejectProductReviewArgs = { id: Scalars['ID']; }; export type MutationAddSubscriptionEmailArgs = { input: Array; }; export type MutationUpdateSubscriptionEmailArgs = { input: Array; }; export type MutationDeleteSubscriptionEmailArgs = { id: Array; }; export type MutationAddSubscriptionPhoneArgs = { input: Array; }; export type MutationUpdateSubscriptionPhoneArgs = { input: Array; }; export type MutationDeleteSubscriptionPhoneArgs = { id: Array; }; export type Node = { id: Scalars['ID']; }; export type NumberOperators = { eq?: Maybe; lt?: Maybe; lte?: Maybe; gt?: Maybe; gte?: Maybe; between?: Maybe; }; export type NumberRange = { start: Scalars['Float']; end: Scalars['Float']; }; export type Order = Node & { __typename?: 'Order'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; /** A unique code for the Order */ code: Scalars['String']; state: Scalars['String']; /** An order is active as long as the payment process has not been completed */ active: Scalars['Boolean']; customer?: Maybe; shippingAddress?: Maybe; billingAddress?: Maybe; lines: Array; /** Order-level adjustments to the order total, such as discounts from promotions */ adjustments: Array; couponCodes: Array; /** Promotions applied to the order. Only gets populated after the payment process has completed. */ promotions: Array; payments?: Maybe>; fulfillments?: Maybe>; subTotalBeforeTax: Scalars['Int']; /** The subTotal is the total of the OrderLines, before order-level promotions and shipping has been applied. */ subTotal: Scalars['Int']; currencyCode: CurrencyCode; shipping: Scalars['Int']; shippingWithTax: Scalars['Int']; shippingMethod?: Maybe; totalBeforeTax: Scalars['Int']; total: Scalars['Int']; history: HistoryEntryList; customFields?: Maybe; }; export type OrderHistoryArgs = { options?: Maybe; }; export type OrderAddress = { __typename?: 'OrderAddress'; fullName?: Maybe; company?: Maybe; streetLine1?: Maybe; streetLine2?: Maybe; city?: Maybe; province?: Maybe; postalCode?: Maybe; country?: Maybe; countryCode?: Maybe; phoneNumber?: Maybe; }; export type OrderFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; state?: Maybe; active?: Maybe; subTotalBeforeTax?: Maybe; subTotal?: Maybe; currencyCode?: Maybe; shipping?: Maybe; shippingWithTax?: Maybe; totalBeforeTax?: Maybe; total?: Maybe; }; export type OrderItem = Node & { __typename?: 'OrderItem'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; cancelled: Scalars['Boolean']; unitPrice: Scalars['Int']; unitPriceWithTax: Scalars['Int']; unitPriceIncludesTax: Scalars['Boolean']; taxRate: Scalars['Float']; adjustments: Array; fulfillment?: Maybe; refundId?: Maybe; }; export type OrderLine = Node & { __typename?: 'OrderLine'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; productVariant: ProductVariant; featuredAsset?: Maybe; unitPrice: Scalars['Int']; unitPriceWithTax: Scalars['Int']; quantity: Scalars['Int']; items: Array; totalPrice: Scalars['Int']; adjustments: Array; order: Order; customFields?: Maybe; }; export type OrderLineInput = { orderLineId: Scalars['ID']; quantity: Scalars['Int']; }; export type OrderList = PaginatedList & { __typename?: 'OrderList'; items: Array; totalItems: Scalars['Int']; }; export type OrderListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type OrderSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; state?: Maybe; subTotalBeforeTax?: Maybe; subTotal?: Maybe; shipping?: Maybe; shippingWithTax?: Maybe; totalBeforeTax?: Maybe; total?: Maybe; }; export type PaginatedList = { items: Array; totalItems: Scalars['Int']; }; export type Payment = Node & { __typename?: 'Payment'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; method: Scalars['String']; amount: Scalars['Int']; state: Scalars['String']; transactionId?: Maybe; errorMessage?: Maybe; refunds: Array; metadata?: Maybe; }; export type PaymentMethod = Node & { __typename?: 'PaymentMethod'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; code: Scalars['String']; enabled: Scalars['Boolean']; configArgs: Array; }; export type PaymentMethodFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; enabled?: Maybe; }; export type PaymentMethodList = PaginatedList & { __typename?: 'PaymentMethodList'; items: Array; totalItems: Scalars['Int']; }; export type PaymentMethodListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type PaymentMethodSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; }; /** * " * @description * Permissions for administrators and customers. Used to control access to * GraphQL resolvers via the {@link Allow} decorator. * * @docsCategory common */ export enum Permission { /** The Authenticated role means simply that the user is logged in */ Authenticated = 'Authenticated', /** SuperAdmin can perform the most sensitive tasks */ SuperAdmin = 'SuperAdmin', /** 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', CreateCatalog = 'CreateCatalog', ReadCatalog = 'ReadCatalog', UpdateCatalog = 'UpdateCatalog', DeleteCatalog = 'DeleteCatalog', CreateCustomer = 'CreateCustomer', ReadCustomer = 'ReadCustomer', UpdateCustomer = 'UpdateCustomer', DeleteCustomer = 'DeleteCustomer', CreateAdministrator = 'CreateAdministrator', ReadAdministrator = 'ReadAdministrator', UpdateAdministrator = 'UpdateAdministrator', DeleteAdministrator = 'DeleteAdministrator', CreateOrder = 'CreateOrder', ReadOrder = 'ReadOrder', UpdateOrder = 'UpdateOrder', DeleteOrder = 'DeleteOrder', CreatePromotion = 'CreatePromotion', ReadPromotion = 'ReadPromotion', UpdatePromotion = 'UpdatePromotion', DeletePromotion = 'DeletePromotion', CreateSettings = 'CreateSettings', ReadSettings = 'ReadSettings', UpdateSettings = 'UpdateSettings', DeleteSettings = 'DeleteSettings' } export type Phone = Node & { __typename?: 'Phone'; id: Scalars['ID']; phone: Scalars['String']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; }; export type PhoneAddInput = { phone: Scalars['String']; }; export type PhoneFilterParameter = { phone?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; }; export type PhoneList = PaginatedList & { __typename?: 'PhoneList'; items: Array; totalItems: Scalars['Int']; }; export type PhoneListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type PhoneSortParameter = { id?: Maybe; phone?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; }; export type PhoneUpdateInput = { id: Scalars['ID']; phone: Scalars['String']; }; /** The price range where the result has more than one price */ export type PriceRange = { __typename?: 'PriceRange'; min: Scalars['Int']; max: Scalars['Int']; }; export type Product = Node & { __typename?: 'Product'; enabled: Scalars['Boolean']; channels: Array; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; slug: Scalars['String']; description: Scalars['String']; featuredAsset?: Maybe; assets: Array; variants: Array; optionGroups: Array; facetValues: Array; translations: Array; collections: Array; recommendations: Array; reviews: ProductReviewList; reviewsHistogram: Array; customFields?: Maybe; }; export type ProductReviewsArgs = { options?: Maybe; }; export type ProductCustomFields = { __typename?: 'ProductCustomFields'; productRecommendationsEnabled?: Maybe; reviewRating?: Maybe; reviewCount?: Maybe; }; export type ProductFilterParameter = { enabled?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; languageCode?: Maybe; name?: Maybe; slug?: Maybe; description?: Maybe; productRecommendationsEnabled?: Maybe; reviewRating?: Maybe; reviewCount?: Maybe; }; export type ProductList = PaginatedList & { __typename?: 'ProductList'; items: Array; totalItems: Scalars['Int']; }; export type ProductListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type ProductOption = Node & { __typename?: 'ProductOption'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; code: Scalars['String']; name: Scalars['String']; groupId: Scalars['ID']; translations: Array; customFields?: Maybe; }; export type ProductOptionGroup = Node & { __typename?: 'ProductOptionGroup'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; code: Scalars['String']; name: Scalars['String']; options: Array; translations: Array; customFields?: Maybe; }; export type ProductOptionGroupTranslation = { __typename?: 'ProductOptionGroupTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; }; export type ProductOptionGroupTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; customFields?: Maybe; }; export type ProductOptionTranslation = { __typename?: 'ProductOptionTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; }; export type ProductOptionTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; customFields?: Maybe; }; export type ProductRecommendation = { __typename?: 'ProductRecommendation'; product: Product; recommendation: Product; type: RecommendationType; }; export type ProductReview = Node & { __typename?: 'ProductReview'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; product: Product; productVariant?: Maybe; summary: Scalars['String']; body?: Maybe; rating: Scalars['Float']; author?: Maybe; authorName: Scalars['String']; authorLocation?: Maybe; upvotes: Scalars['Int']; downvotes: Scalars['Int']; state: Scalars['String']; response?: Maybe; responseCreatedAt?: Maybe; }; export type ProductReviewFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; summary?: Maybe; body?: Maybe; rating?: Maybe; authorName?: Maybe; authorLocation?: Maybe; upvotes?: Maybe; downvotes?: Maybe; state?: Maybe; response?: Maybe; responseCreatedAt?: Maybe; }; export type ProductReviewHistogramItem = { __typename?: 'ProductReviewHistogramItem'; bin: Scalars['Int']; frequency: Scalars['Int']; }; export type ProductReviewList = PaginatedList & { __typename?: 'ProductReviewList'; items: Array; totalItems: Scalars['Int']; }; export type ProductReviewListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type ProductReviewSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; summary?: Maybe; body?: Maybe; rating?: Maybe; authorName?: Maybe; authorLocation?: Maybe; upvotes?: Maybe; downvotes?: Maybe; state?: Maybe; response?: Maybe; responseCreatedAt?: Maybe; }; export type ProductSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; slug?: Maybe; description?: Maybe; productRecommendationsEnabled?: Maybe; reviewRating?: Maybe; reviewCount?: Maybe; }; export type ProductTranslation = { __typename?: 'ProductTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; slug: Scalars['String']; description: Scalars['String']; }; export type ProductTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; slug?: Maybe; description?: Maybe; customFields?: Maybe; }; export type ProductVariant = Node & { __typename?: 'ProductVariant'; enabled: Scalars['Boolean']; stockOnHand: Scalars['Int']; trackInventory: Scalars['Boolean']; stockMovements: StockMovementList; id: Scalars['ID']; productId: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; sku: Scalars['String']; name: Scalars['String']; featuredAsset?: Maybe; assets: Array; price: Scalars['Int']; currencyCode: CurrencyCode; priceIncludesTax: Scalars['Boolean']; priceWithTax: Scalars['Int']; taxRateApplied: TaxRate; taxCategory: TaxCategory; options: Array; facetValues: Array; translations: Array; bulkDiscounts: Array; customFields?: Maybe; }; export type ProductVariantStockMovementsArgs = { options?: Maybe; }; export type ProductVariantCustomFields = { __typename?: 'ProductVariantCustomFields'; bulkDiscountEnabled?: Maybe; Unit?: Maybe; Sales?: Maybe; }; export type ProductVariantFilterParameter = { enabled?: Maybe; stockOnHand?: Maybe; trackInventory?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; languageCode?: Maybe; sku?: Maybe; name?: Maybe; price?: Maybe; currencyCode?: Maybe; priceIncludesTax?: Maybe; priceWithTax?: Maybe; bulkDiscountEnabled?: Maybe; Unit?: Maybe; Sales?: Maybe; }; export type ProductVariantList = PaginatedList & { __typename?: 'ProductVariantList'; items: Array; totalItems: Scalars['Int']; }; export type ProductVariantListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type ProductVariantSortParameter = { stockOnHand?: Maybe; id?: Maybe; productId?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; sku?: Maybe; name?: Maybe; price?: Maybe; priceWithTax?: Maybe; bulkDiscountEnabled?: Maybe; Unit?: Maybe; Sales?: Maybe; }; export type ProductVariantTranslation = { __typename?: 'ProductVariantTranslation'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; languageCode: LanguageCode; name: Scalars['String']; }; export type ProductVariantTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; customFields?: Maybe; }; export type Promotion = Node & { __typename?: 'Promotion'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; startsAt?: Maybe; endsAt?: Maybe; couponCode?: Maybe; perCustomerUsageLimit?: Maybe; name: Scalars['String']; enabled: Scalars['Boolean']; conditions: Array; actions: Array; }; export type PromotionFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; startsAt?: Maybe; endsAt?: Maybe; couponCode?: Maybe; perCustomerUsageLimit?: Maybe; name?: Maybe; enabled?: Maybe; }; export type PromotionList = PaginatedList & { __typename?: 'PromotionList'; items: Array; totalItems: Scalars['Int']; }; export type PromotionListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type PromotionSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; startsAt?: Maybe; endsAt?: Maybe; couponCode?: Maybe; perCustomerUsageLimit?: Maybe; name?: Maybe; }; export type Query = { __typename?: 'Query'; administrators: AdministratorList; administrator?: Maybe; /** Get a list of Assets */ assets: AssetList; /** Get a single Asset by id */ asset?: Maybe; me?: Maybe; channels: Array; channel?: Maybe; activeChannel: Channel; collections: CollectionList; /** Get a Collection either by id or slug. If neither id nor slug is speicified, an error will result. */ collection?: Maybe; collectionFilters: Array; countries: CountryList; country?: Maybe; customerGroups: CustomerGroupList; customerGroup?: Maybe; customers: CustomerList; customer?: Maybe; facets: FacetList; facet?: Maybe; globalSettings: GlobalSettings; job?: Maybe; jobs: JobList; jobsById: Array; jobQueues: Array; order?: Maybe; orders: OrderList; paymentMethods: PaymentMethodList; paymentMethod?: Maybe; productOptionGroups: Array; productOptionGroup?: Maybe; search: SearchResponse; products: ProductList; /** Get a Product either by id or slug. If neither id nor slug is speicified, an error will result. */ product?: Maybe; promotion?: Maybe; promotions: PromotionList; promotionConditions: Array; promotionActions: Array; roles: RoleList; role?: Maybe; shippingMethods: ShippingMethodList; shippingMethod?: Maybe; shippingEligibilityCheckers: Array; shippingCalculators: Array; testShippingMethod: TestShippingMethodResult; testEligibleShippingMethods: Array; taxCategories: Array; taxCategory?: Maybe; taxRates: TaxRateList; taxRate?: Maybe; zones: Array; zone?: Maybe; productRecommendations: Array; productBulkDiscounts: Array; productReviews: ProductReviewList; productReview?: Maybe; SubscriptionEmails: EmailList; SubscriptionEmail?: Maybe; SubscriptionPhones: PhoneList; SubscriptionPhone?: Maybe; }; export type QueryAdministratorsArgs = { options?: Maybe; }; export type QueryAdministratorArgs = { id: Scalars['ID']; }; export type QueryAssetsArgs = { options?: Maybe; }; export type QueryAssetArgs = { id: Scalars['ID']; }; export type QueryChannelArgs = { id: Scalars['ID']; }; export type QueryCollectionsArgs = { options?: Maybe; }; export type QueryCollectionArgs = { id?: Maybe; slug?: Maybe; }; export type QueryCountriesArgs = { options?: Maybe; }; export type QueryCountryArgs = { id: Scalars['ID']; }; export type QueryCustomerGroupsArgs = { options?: Maybe; }; export type QueryCustomerGroupArgs = { id: Scalars['ID']; }; export type QueryCustomersArgs = { options?: Maybe; }; export type QueryCustomerArgs = { id: Scalars['ID']; }; export type QueryFacetsArgs = { options?: Maybe; }; export type QueryFacetArgs = { id: Scalars['ID']; }; export type QueryJobArgs = { jobId: Scalars['ID']; }; export type QueryJobsArgs = { options?: Maybe; }; export type QueryJobsByIdArgs = { jobIds: Array; }; export type QueryOrderArgs = { id: Scalars['ID']; }; export type QueryOrdersArgs = { options?: Maybe; }; export type QueryPaymentMethodsArgs = { options?: Maybe; }; export type QueryPaymentMethodArgs = { id: Scalars['ID']; }; export type QueryProductOptionGroupsArgs = { filterTerm?: Maybe; }; export type QueryProductOptionGroupArgs = { id: Scalars['ID']; }; export type QuerySearchArgs = { input: SearchInput; }; export type QueryProductsArgs = { options?: Maybe; }; export type QueryProductArgs = { id?: Maybe; slug?: Maybe; }; export type QueryPromotionArgs = { id: Scalars['ID']; }; export type QueryPromotionsArgs = { options?: Maybe; }; export type QueryRolesArgs = { options?: Maybe; }; export type QueryRoleArgs = { id: Scalars['ID']; }; export type QueryShippingMethodsArgs = { options?: Maybe; }; export type QueryShippingMethodArgs = { id: Scalars['ID']; }; export type QueryTestShippingMethodArgs = { input: TestShippingMethodInput; }; export type QueryTestEligibleShippingMethodsArgs = { input: TestEligibleShippingMethodsInput; }; export type QueryTaxCategoryArgs = { id: Scalars['ID']; }; export type QueryTaxRatesArgs = { options?: Maybe; }; export type QueryTaxRateArgs = { id: Scalars['ID']; }; export type QueryZoneArgs = { id: Scalars['ID']; }; export type QueryProductRecommendationsArgs = { productId: Scalars['ID']; }; export type QueryProductBulkDiscountsArgs = { productId: Scalars['ID']; }; export type QueryProductReviewsArgs = { options?: Maybe; }; export type QueryProductReviewArgs = { id: Scalars['ID']; }; export type QuerySubscriptionEmailsArgs = { options?: Maybe; }; export type QuerySubscriptionEmailArgs = { id: Scalars['ID']; }; export type QuerySubscriptionPhonesArgs = { options?: Maybe; }; export type QuerySubscriptionPhoneArgs = { id: Scalars['ID']; }; export enum RecommendationType { Crosssell = 'CROSSSELL', Upsell = 'UPSELL' } export type Refund = Node & { __typename?: 'Refund'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; items: Scalars['Int']; shipping: Scalars['Int']; adjustment: Scalars['Int']; total: Scalars['Int']; method?: Maybe; state: Scalars['String']; transactionId?: Maybe; reason?: Maybe; orderItems: Array; paymentId: Scalars['ID']; metadata?: Maybe; }; export type RefundOrderInput = { lines: Array; shipping: Scalars['Int']; adjustment: Scalars['Int']; paymentId: Scalars['ID']; reason?: Maybe; }; export type RemoveProductsFromChannelInput = { productIds: Array; channelId: Scalars['ID']; }; export type Return = Node & StockMovement & { __typename?: 'Return'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; productVariant: ProductVariant; type: StockMovementType; quantity: Scalars['Int']; orderItem: OrderItem; }; export type Role = Node & { __typename?: 'Role'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; code: Scalars['String']; description: Scalars['String']; permissions: Array; channels: Array; }; export type RoleFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; description?: Maybe; }; export type RoleList = PaginatedList & { __typename?: 'RoleList'; items: Array; totalItems: Scalars['Int']; }; export type RoleListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type RoleSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; description?: Maybe; }; export type Sale = Node & StockMovement & { __typename?: 'Sale'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; productVariant: ProductVariant; type: StockMovementType; quantity: Scalars['Int']; orderLine: OrderLine; }; export type SearchInput = { term?: Maybe; facetValueIds?: Maybe>; facetValueOperator?: Maybe; collectionId?: Maybe; groupByProduct?: Maybe; take?: Maybe; skip?: Maybe; sort?: Maybe; }; export type SearchReindexResponse = { __typename?: 'SearchReindexResponse'; success: Scalars['Boolean']; }; export type SearchResponse = { __typename?: 'SearchResponse'; items: Array; totalItems: Scalars['Int']; facetValues: Array; }; export type SearchResult = { __typename?: 'SearchResult'; enabled: Scalars['Boolean']; /** An array of ids of the Collections in which this result appears */ channelIds: Array; sku: Scalars['String']; slug: Scalars['String']; productId: Scalars['ID']; productName: Scalars['String']; /** @deprecated Use `productAsset.preview` instead */ productPreview: Scalars['String']; productAsset?: Maybe; productVariantId: Scalars['ID']; productVariantName: Scalars['String']; /** @deprecated Use `productVariantAsset.preview` instead */ productVariantPreview: Scalars['String']; productVariantAsset?: Maybe; price: SearchResultPrice; priceWithTax: SearchResultPrice; currencyCode: CurrencyCode; description: Scalars['String']; facetIds: Array; facetValueIds: Array; /** An array of ids of the Collections in which this result appears */ collectionIds: Array; /** A relevence score for the result. Differs between database implementations */ score: Scalars['Float']; }; export type SearchResultAsset = { __typename?: 'SearchResultAsset'; id: Scalars['ID']; preview: Scalars['String']; focalPoint?: Maybe; }; /** 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?: Maybe; price?: Maybe; }; export type ServerConfig = { __typename?: 'ServerConfig'; customFieldConfig: CustomFields; }; export type SettleRefundInput = { id: Scalars['ID']; transactionId: Scalars['String']; }; export type ShippingMethod = Node & { __typename?: 'ShippingMethod'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; code: Scalars['String']; description: Scalars['String']; checker: ConfigurableOperation; calculator: ConfigurableOperation; }; export type ShippingMethodFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; description?: Maybe; }; export type ShippingMethodList = PaginatedList & { __typename?: 'ShippingMethodList'; items: Array; totalItems: Scalars['Int']; }; export type ShippingMethodListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type ShippingMethodQuote = { __typename?: 'ShippingMethodQuote'; id: Scalars['ID']; price: Scalars['Int']; priceWithTax: Scalars['Int']; description: Scalars['String']; metadata?: Maybe; }; export type ShippingMethodSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; code?: Maybe; description?: Maybe; }; /** The price value where the result has a single price */ export type SinglePrice = { __typename?: 'SinglePrice'; value: Scalars['Int']; }; export enum SortOrder { Asc = 'ASC', Desc = 'DESC' } export type StockAdjustment = Node & StockMovement & { __typename?: 'StockAdjustment'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; productVariant: ProductVariant; type: StockMovementType; quantity: Scalars['Int']; }; export type StockMovement = { id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; productVariant: ProductVariant; type: StockMovementType; quantity: Scalars['Int']; }; export type StockMovementItem = StockAdjustment | Sale | Cancellation | Return; export type StockMovementList = { __typename?: 'StockMovementList'; items: Array; totalItems: Scalars['Int']; }; export type StockMovementListOptions = { type?: Maybe; skip?: Maybe; take?: Maybe; }; export enum StockMovementType { Adjustment = 'ADJUSTMENT', Sale = 'SALE', Cancellation = 'CANCELLATION', Return = 'RETURN' } export type StringCustomFieldConfig = CustomField & { __typename?: 'StringCustomFieldConfig'; name: Scalars['String']; type: Scalars['String']; length?: Maybe; label?: Maybe>; description?: Maybe>; readonly?: Maybe; internal?: Maybe; pattern?: Maybe; options?: Maybe>; }; export type StringFieldOption = { __typename?: 'StringFieldOption'; value: Scalars['String']; label?: Maybe>; }; export type StringOperators = { eq?: Maybe; contains?: Maybe; }; export type TaxCategory = Node & { __typename?: 'TaxCategory'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; name: Scalars['String']; }; export type TaxRate = Node & { __typename?: 'TaxRate'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; name: Scalars['String']; enabled: Scalars['Boolean']; value: Scalars['Float']; category: TaxCategory; zone: Zone; customerGroup?: Maybe; }; export type TaxRateFilterParameter = { createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; enabled?: Maybe; value?: Maybe; }; export type TaxRateList = PaginatedList & { __typename?: 'TaxRateList'; items: Array; totalItems: Scalars['Int']; }; export type TaxRateListOptions = { skip?: Maybe; take?: Maybe; sort?: Maybe; filter?: Maybe; }; export type TaxRateSortParameter = { id?: Maybe; createdAt?: Maybe; updatedAt?: Maybe; name?: Maybe; value?: Maybe; }; export type TestEligibleShippingMethodsInput = { shippingAddress: CreateAddressInput; lines: Array; }; export type TestShippingMethodInput = { checker: ConfigurableOperationInput; calculator: ConfigurableOperationInput; shippingAddress: CreateAddressInput; lines: Array; }; export type TestShippingMethodOrderLineInput = { productVariantId: Scalars['ID']; quantity: Scalars['Int']; }; export type TestShippingMethodQuote = { __typename?: 'TestShippingMethodQuote'; price: Scalars['Int']; priceWithTax: Scalars['Int']; description: Scalars['String']; metadata?: Maybe; }; export type TestShippingMethodResult = { __typename?: 'TestShippingMethodResult'; eligible: Scalars['Boolean']; quote?: Maybe; }; export type UpdateAddressInput = { id: Scalars['ID']; fullName?: Maybe; company?: Maybe; streetLine1?: Maybe; streetLine2?: Maybe; city?: Maybe; province?: Maybe; postalCode?: Maybe; countryCode?: Maybe; phoneNumber?: Maybe; defaultShippingAddress?: Maybe; defaultBillingAddress?: Maybe; customFields?: Maybe; }; export type UpdateAdministratorInput = { id: Scalars['ID']; firstName?: Maybe; lastName?: Maybe; emailAddress?: Maybe; password?: Maybe; roleIds?: Maybe>; }; export type UpdateAssetInput = { id: Scalars['ID']; name?: Maybe; focalPoint?: Maybe; }; export type UpdateChannelInput = { id: Scalars['ID']; code?: Maybe; token?: Maybe; defaultLanguageCode?: Maybe; pricesIncludeTax?: Maybe; currencyCode?: Maybe; defaultTaxZoneId?: Maybe; defaultShippingZoneId?: Maybe; }; export type UpdateCollectionInput = { id: Scalars['ID']; isPrivate?: Maybe; featuredAssetId?: Maybe; parentId?: Maybe; assetIds?: Maybe>; filters?: Maybe>; translations?: Maybe>; customFields?: Maybe; }; export type UpdateCollectionTranslationInput = { id?: Maybe; languageCode: LanguageCode; name?: Maybe; slug?: Maybe; description?: Maybe; customFields?: Maybe; }; export type UpdateCountryInput = { id: Scalars['ID']; code?: Maybe; translations?: Maybe>; enabled?: Maybe; }; export type UpdateCustomerGroupInput = { id: Scalars['ID']; name?: Maybe; }; export type UpdateCustomerInput = { id: Scalars['ID']; title?: Maybe; firstName?: Maybe; lastName?: Maybe; phoneNumber?: Maybe; emailAddress?: Maybe; customFields?: Maybe; }; export type UpdateCustomerNoteInput = { noteId: Scalars['ID']; note: Scalars['String']; }; export type UpdateFacetInput = { id: Scalars['ID']; isPrivate?: Maybe; code?: Maybe; translations?: Maybe>; customFields?: Maybe; }; export type UpdateFacetValueInput = { id: Scalars['ID']; code?: Maybe; translations?: Maybe>; customFields?: Maybe; }; export type UpdateGlobalSettingsInput = { availableLanguages?: Maybe>; trackInventory?: Maybe; customFields?: Maybe; }; export type UpdateOrderNoteInput = { noteId: Scalars['ID']; note?: Maybe; isPublic?: Maybe; }; export type UpdatePaymentMethodInput = { id: Scalars['ID']; code?: Maybe; enabled?: Maybe; configArgs?: Maybe>; }; export type UpdateProductCustomFieldsInput = { productRecommendationsEnabled?: Maybe; reviewRating?: Maybe; reviewCount?: Maybe; }; export type UpdateProductInput = { id: Scalars['ID']; enabled?: Maybe; featuredAssetId?: Maybe; assetIds?: Maybe>; facetValueIds?: Maybe>; translations?: Maybe>; customFields?: Maybe; }; export type UpdateProductOptionGroupInput = { id: Scalars['ID']; code?: Maybe; translations?: Maybe>; customFields?: Maybe; }; export type UpdateProductOptionInput = { id: Scalars['ID']; code?: Maybe; translations?: Maybe>; customFields?: Maybe; }; export type UpdateProductReviewInput = { id: Scalars['ID']; summary?: Maybe; body?: Maybe; response?: Maybe; }; export type UpdateProductVariantCustomFieldsInput = { bulkDiscountEnabled?: Maybe; Unit?: Maybe; Sales?: Maybe; }; export type UpdateProductVariantInput = { id: Scalars['ID']; enabled?: Maybe; translations?: Maybe>; facetValueIds?: Maybe>; sku?: Maybe; taxCategoryId?: Maybe; price?: Maybe; featuredAssetId?: Maybe; assetIds?: Maybe>; stockOnHand?: Maybe; trackInventory?: Maybe; customFields?: Maybe; }; export type UpdatePromotionInput = { id: Scalars['ID']; name?: Maybe; enabled?: Maybe; startsAt?: Maybe; endsAt?: Maybe; couponCode?: Maybe; perCustomerUsageLimit?: Maybe; conditions?: Maybe>; actions?: Maybe>; }; export type UpdateRoleInput = { id: Scalars['ID']; code?: Maybe; description?: Maybe; permissions?: Maybe>; channelIds?: Maybe>; }; export type UpdateShippingMethodInput = { id: Scalars['ID']; code?: Maybe; description?: Maybe; checker?: Maybe; calculator?: Maybe; }; export type UpdateTaxCategoryInput = { id: Scalars['ID']; name?: Maybe; }; export type UpdateTaxRateInput = { id: Scalars['ID']; name?: Maybe; value?: Maybe; enabled?: Maybe; categoryId?: Maybe; zoneId?: Maybe; customerGroupId?: Maybe; }; export type UpdateZoneInput = { id: Scalars['ID']; name?: Maybe; }; export type User = Node & { __typename?: 'User'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; identifier: Scalars['String']; verified: Scalars['Boolean']; roles: Array; lastLogin?: Maybe; customFields?: Maybe; }; export type Zone = Node & { __typename?: 'Zone'; id: Scalars['ID']; createdAt: Scalars['DateTime']; updatedAt: Scalars['DateTime']; name: Scalars['String']; members: Array; }; export namespace SubscribedEmails { export type Fragment = SubscribedEmailsFragment; } export namespace SubscribedPhones { export type Fragment = SubscribedPhonesFragment; } export namespace GetAllEmails { export type Variables = GetAllEmailsQueryVariables; export type Query = GetAllEmailsQuery; export type SubscriptionEmails = GetAllEmailsQuery['SubscriptionEmails']; export type Items = (NonNullable); } export namespace DeleteEmail { export type Variables = DeleteEmailMutationVariables; export type Mutation = DeleteEmailMutation; export type DeleteSubscriptionEmail = (NonNullable); } export namespace GetAllPhones { export type Variables = GetAllPhonesQueryVariables; export type Query = GetAllPhonesQuery; export type SubscriptionPhones = GetAllPhonesQuery['SubscriptionPhones']; export type Items = (NonNullable); } export namespace DeletePhone { export type Variables = DeletePhoneMutationVariables; export type Mutation = DeletePhoneMutation; export type DeleteSubscriptionPhone = (NonNullable); } export namespace UpdateEmail { export type Variables = UpdateEmailMutationVariables; export type Mutation = UpdateEmailMutation; export type UpdateSubscriptionEmail = (NonNullable); } export namespace CreateEmail { export type Variables = CreateEmailMutationVariables; export type Mutation = CreateEmailMutation; export type AddSubscriptionEmail = (NonNullable); } export namespace UpdatePhone { export type Variables = UpdatePhoneMutationVariables; export type Mutation = UpdatePhoneMutation; export type UpdateSubscriptionPhone = (NonNullable); } export namespace CreatePhone { export type Variables = CreatePhoneMutationVariables; export type Mutation = CreatePhoneMutation; export type AddSubscriptionPhone = (NonNullable); } export namespace GetEmail { export type Variables = GetEmailQueryVariables; export type Query = GetEmailQuery; export type SubscriptionEmail = (NonNullable); } export namespace GetPhone { export type Variables = GetPhoneQueryVariables; export type Query = GetPhoneQuery; export type SubscriptionPhone = (NonNullable); } export type SubscribedEmailsFragment = ( { __typename?: 'Email' } & Pick ); export type SubscribedPhonesFragment = ( { __typename?: 'Phone' } & Pick ); export type GetAllEmailsQueryVariables = Exact<{ options?: Maybe; }>; export type GetAllEmailsQuery = ( { __typename?: 'Query' } & { SubscriptionEmails: ( { __typename?: 'EmailList' } & Pick & { items: Array<( { __typename?: 'Email' } & SubscribedEmailsFragment )> } ) } ); export type DeleteEmailMutationVariables = Exact<{ input: Array; }>; export type DeleteEmailMutation = ( { __typename?: 'Mutation' } & { deleteSubscriptionEmail: Array> } ); export type GetAllPhonesQueryVariables = Exact<{ options?: Maybe; }>; export type GetAllPhonesQuery = ( { __typename?: 'Query' } & { SubscriptionPhones: ( { __typename?: 'PhoneList' } & Pick & { items: Array<( { __typename?: 'Phone' } & SubscribedPhonesFragment )> } ) } ); export type DeletePhoneMutationVariables = Exact<{ input: Array; }>; export type DeletePhoneMutation = ( { __typename?: 'Mutation' } & { deleteSubscriptionPhone: Array> } ); export type UpdateEmailMutationVariables = Exact<{ input: Array; }>; export type UpdateEmailMutation = ( { __typename?: 'Mutation' } & { updateSubscriptionEmail: Array> } ); export type CreateEmailMutationVariables = Exact<{ input: Array; }>; export type CreateEmailMutation = ( { __typename?: 'Mutation' } & { addSubscriptionEmail: Array> } ); export type UpdatePhoneMutationVariables = Exact<{ input: Array; }>; export type UpdatePhoneMutation = ( { __typename?: 'Mutation' } & { updateSubscriptionPhone: Array> } ); export type CreatePhoneMutationVariables = Exact<{ input: Array; }>; export type CreatePhoneMutation = ( { __typename?: 'Mutation' } & { addSubscriptionPhone: Array> } ); export type GetEmailQueryVariables = Exact<{ id: Scalars['ID']; }>; export type GetEmailQuery = ( { __typename?: 'Query' } & { SubscriptionEmail?: Maybe<( { __typename?: 'Email' } & SubscribedEmailsFragment )> } ); export type GetPhoneQueryVariables = Exact<{ id: Scalars['ID']; }>; export type GetPhoneQuery = ( { __typename?: 'Query' } & { SubscriptionPhone?: Maybe<( { __typename?: 'Phone' } & SubscribedPhonesFragment )> } );