AbiirSkincare/Hydrogen/web/storefrontapi.generated.d.ts

1579 lines
65 KiB
TypeScript

/* eslint-disable eslint-comments/disable-enable-pair */
/* eslint-disable eslint-comments/no-unlimited-disable */
/* eslint-disable */
import type * as StorefrontAPI from '@shopify/hydrogen/storefront-api-types';
export type MoneyFeaturedProductFragment = Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
export type FeaturedProductNodeFragment = Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'altText' | 'url' | 'width' | 'height'>
>;
priceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
compareAtPriceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
};
export type FeaturedProductsCatalogQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
query: StorefrontAPI.Scalars['String']['input'];
}>;
export type FeaturedProductsCatalogQuery = {
products: {
nodes: Array<
Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<
Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
};
};
export type WishlistProductsCatalogQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
query: StorefrontAPI.Scalars['String']['input'];
}>;
export type WishlistProductsCatalogQuery = {
products: {
nodes: Array<
Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<
Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
};
};
export type FrontpageFeaturedCollectionQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
handle: StorefrontAPI.Scalars['String']['input'];
first: StorefrontAPI.Scalars['Int']['input'];
}>;
export type FrontpageFeaturedCollectionQuery = {
collection?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Collection, 'id' | 'handle'> & {
products: {
nodes: Array<
Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<
Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
};
}
>;
};
export type MoneyFragment = Pick<
StorefrontAPI.MoneyV2,
'currencyCode' | 'amount'
>;
export type CartLineFragment = Pick<
StorefrontAPI.CartLine,
'id' | 'quantity'
> & {
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
cost: {
totalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
amountPerQuantity: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
compareAtAmountPerQuantity?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
merchandise: Pick<
StorefrontAPI.ProductVariant,
'id' | 'availableForSale' | 'requiresShipping' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'url' | 'altText' | 'width' | 'height'>
>;
product: Pick<StorefrontAPI.Product, 'handle' | 'title' | 'id' | 'vendor'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
};
parentRelationship?: StorefrontAPI.Maybe<{
parent: Pick<StorefrontAPI.CartLine, 'id'>;
}>;
};
export type CartLineComponentFragment = Pick<
StorefrontAPI.ComponentizableCartLine,
'id' | 'quantity'
> & {
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
cost: {
totalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
amountPerQuantity: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
compareAtAmountPerQuantity?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
merchandise: Pick<
StorefrontAPI.ProductVariant,
'id' | 'availableForSale' | 'requiresShipping' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'url' | 'altText' | 'width' | 'height'>
>;
product: Pick<StorefrontAPI.Product, 'handle' | 'title' | 'id' | 'vendor'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
};
lineComponents: Array<
Pick<StorefrontAPI.CartLine, 'id' | 'quantity'> & {
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
cost: {
totalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
amountPerQuantity: Pick<
StorefrontAPI.MoneyV2,
'currencyCode' | 'amount'
>;
compareAtAmountPerQuantity?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
merchandise: Pick<
StorefrontAPI.ProductVariant,
'id' | 'availableForSale' | 'requiresShipping' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
product: Pick<
StorefrontAPI.Product,
'handle' | 'title' | 'id' | 'vendor'
>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
};
parentRelationship?: StorefrontAPI.Maybe<{
parent: Pick<StorefrontAPI.CartLine, 'id'>;
}>;
}
>;
};
export type CartApiQueryFragment = Pick<
StorefrontAPI.Cart,
'updatedAt' | 'id' | 'checkoutUrl' | 'totalQuantity' | 'note'
> & {
appliedGiftCards: Array<
Pick<StorefrontAPI.AppliedGiftCard, 'id' | 'lastCharacters'> & {
amountUsed: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
}
>;
buyerIdentity: Pick<
StorefrontAPI.CartBuyerIdentity,
'countryCode' | 'email' | 'phone'
> & {
customer?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Customer,
'id' | 'email' | 'firstName' | 'lastName' | 'displayName'
>
>;
};
lines: {
nodes: Array<
| (Pick<StorefrontAPI.CartLine, 'id' | 'quantity'> & {
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
cost: {
totalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
amountPerQuantity: Pick<
StorefrontAPI.MoneyV2,
'currencyCode' | 'amount'
>;
compareAtAmountPerQuantity?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
merchandise: Pick<
StorefrontAPI.ProductVariant,
'id' | 'availableForSale' | 'requiresShipping' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
product: Pick<
StorefrontAPI.Product,
'handle' | 'title' | 'id' | 'vendor'
>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
};
parentRelationship?: StorefrontAPI.Maybe<{
parent: Pick<StorefrontAPI.CartLine, 'id'>;
}>;
})
| (Pick<StorefrontAPI.ComponentizableCartLine, 'id' | 'quantity'> & {
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
cost: {
totalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
amountPerQuantity: Pick<
StorefrontAPI.MoneyV2,
'currencyCode' | 'amount'
>;
compareAtAmountPerQuantity?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
merchandise: Pick<
StorefrontAPI.ProductVariant,
'id' | 'availableForSale' | 'requiresShipping' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
product: Pick<
StorefrontAPI.Product,
'handle' | 'title' | 'id' | 'vendor'
>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
};
lineComponents: Array<
Pick<StorefrontAPI.CartLine, 'id' | 'quantity'> & {
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
cost: {
totalAmount: Pick<
StorefrontAPI.MoneyV2,
'currencyCode' | 'amount'
>;
amountPerQuantity: Pick<
StorefrontAPI.MoneyV2,
'currencyCode' | 'amount'
>;
compareAtAmountPerQuantity?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
merchandise: Pick<
StorefrontAPI.ProductVariant,
'id' | 'availableForSale' | 'requiresShipping' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
product: Pick<
StorefrontAPI.Product,
'handle' | 'title' | 'id' | 'vendor'
>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
};
parentRelationship?: StorefrontAPI.Maybe<{
parent: Pick<StorefrontAPI.CartLine, 'id'>;
}>;
}
>;
})
>;
};
cost: {
subtotalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
totalAmount: Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>;
totalDutyAmount?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
totalTaxAmount?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'currencyCode' | 'amount'>
>;
};
attributes: Array<Pick<StorefrontAPI.Attribute, 'key' | 'value'>>;
discountCodes: Array<
Pick<StorefrontAPI.CartDiscountCode, 'code' | 'applicable'>
>;
};
export type MenuItemFragment = Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
>;
export type ChildMenuItemFragment = Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
>;
export type ParentMenuItemFragment = Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
>
>;
};
export type MenuFragment = Pick<StorefrontAPI.Menu, 'id'> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
>
>;
}
>;
};
export type ShopFragment = Pick<
StorefrontAPI.Shop,
'id' | 'name' | 'description'
> & {
primaryDomain: Pick<StorefrontAPI.Domain, 'url'>;
brand?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Brand, 'shortDescription' | 'slogan'> & {
logo?: StorefrontAPI.Maybe<{
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
}>;
}
>;
};
export type HeaderQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
headerMenuHandle: StorefrontAPI.Scalars['String']['input'];
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
}>;
export type HeaderQuery = {
shop: Pick<StorefrontAPI.Shop, 'id' | 'name' | 'description'> & {
primaryDomain: Pick<StorefrontAPI.Domain, 'url'>;
brand?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Brand, 'shortDescription' | 'slogan'> & {
logo?: StorefrontAPI.Maybe<{
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
}>;
}
>;
};
menu?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Menu, 'id'> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
>
>;
}
>;
}
>;
};
export type FooterQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
footerMenuHandle: StorefrontAPI.Scalars['String']['input'];
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
}>;
export type FooterQuery = {
menu?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Menu, 'id'> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
> & {
items: Array<
Pick<
StorefrontAPI.MenuItem,
'id' | 'resourceId' | 'tags' | 'title' | 'type' | 'url'
>
>;
}
>;
}
>;
};
export type SpringGlowBundleVariantQueryVariables = StorefrontAPI.Exact<{
handle: StorefrontAPI.Scalars['String']['input'];
}>;
export type SpringGlowBundleVariantQuery = {
product?: StorefrontAPI.Maybe<{
selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ProductVariant, 'id'>
>;
}>;
};
export type ArticleQueryVariables = StorefrontAPI.Exact<{
articleHandle: StorefrontAPI.Scalars['String']['input'];
blogHandle: StorefrontAPI.Scalars['String']['input'];
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
}>;
export type ArticleQuery = {
blog?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Blog, 'handle'> & {
articleByHandle?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Article,
'handle' | 'title' | 'contentHtml' | 'publishedAt'
> & {
author?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ArticleAuthor, 'name'>
>;
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
seo?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Seo, 'description' | 'title'>
>;
}
>;
}
>;
};
export type BlogQueryVariables = StorefrontAPI.Exact<{
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
blogHandle: StorefrontAPI.Scalars['String']['input'];
first?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
last?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
startCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
endCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
}>;
export type BlogQuery = {
blog?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Blog, 'title' | 'handle'> & {
seo?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Seo, 'title' | 'description'>
>;
articles: {
nodes: Array<
Pick<
StorefrontAPI.Article,
'contentHtml' | 'handle' | 'id' | 'publishedAt' | 'title'
> & {
author?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ArticleAuthor, 'name'>
>;
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
blog: Pick<StorefrontAPI.Blog, 'handle'>;
}
>;
pageInfo: Pick<
StorefrontAPI.PageInfo,
'hasPreviousPage' | 'hasNextPage' | 'endCursor' | 'startCursor'
>;
};
}
>;
};
export type ArticleItemFragment = Pick<
StorefrontAPI.Article,
'contentHtml' | 'handle' | 'id' | 'publishedAt' | 'title'
> & {
author?: StorefrontAPI.Maybe<Pick<StorefrontAPI.ArticleAuthor, 'name'>>;
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'altText' | 'url' | 'width' | 'height'>
>;
blog: Pick<StorefrontAPI.Blog, 'handle'>;
};
export type BlogsQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
endCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
first?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
last?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
startCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
}>;
export type BlogsQuery = {
blogs: {
pageInfo: Pick<
StorefrontAPI.PageInfo,
'hasNextPage' | 'hasPreviousPage' | 'startCursor' | 'endCursor'
>;
nodes: Array<
Pick<StorefrontAPI.Blog, 'title' | 'handle'> & {
seo?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Seo, 'title' | 'description'>
>;
}
>;
};
};
export type MoneyProductItemFragment = Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
export type ProductItemFragment = Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'altText' | 'url' | 'width' | 'height'>
>;
priceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
maxVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
compareAtPriceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
};
export type CollectionQueryVariables = StorefrontAPI.Exact<{
handle: StorefrontAPI.Scalars['String']['input'];
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
first?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
last?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
startCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
endCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
}>;
export type CollectionQuery = {
collection?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Collection, 'id' | 'handle' | 'title'> & {
products: {
nodes: Array<
Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<
Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
maxVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
pageInfo: Pick<
StorefrontAPI.PageInfo,
'hasPreviousPage' | 'hasNextPage' | 'endCursor' | 'startCursor'
>;
};
}
>;
};
export type MoneyCollectionItemFragment = Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
export type CollectionItemFragment = Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'altText' | 'url' | 'width' | 'height'>
>;
priceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
maxVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
compareAtPriceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
};
export type SkincareCollectionCatalogQueryVariables = StorefrontAPI.Exact<{
id: StorefrontAPI.Scalars['ID']['input'];
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
first?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
last?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
startCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
endCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
sortKey?: StorefrontAPI.InputMaybe<StorefrontAPI.ProductCollectionSortKeys>;
reverse?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Boolean']['input']>;
}>;
export type SkincareCollectionCatalogQuery = {
collection?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Collection, 'id' | 'handle' | 'title'> & {
products: {
nodes: Array<
Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
variants: {
nodes: Array<
Pick<StorefrontAPI.ProductVariant, 'id' | 'availableForSale'>
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
maxVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
pageInfo: Pick<
StorefrontAPI.PageInfo,
'hasPreviousPage' | 'hasNextPage' | 'startCursor' | 'endCursor'
>;
};
}
>;
};
export type PageQueryVariables = StorefrontAPI.Exact<{
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
handle: StorefrontAPI.Scalars['String']['input'];
}>;
export type PageQuery = {
page?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Page, 'handle' | 'id' | 'title' | 'body'> & {
seo?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Seo, 'description' | 'title'>
>;
}
>;
};
export type PolicyFragment = Pick<
StorefrontAPI.ShopPolicy,
'body' | 'handle' | 'id' | 'title' | 'url'
>;
export type PolicyQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
privacyPolicy: StorefrontAPI.Scalars['Boolean']['input'];
refundPolicy: StorefrontAPI.Scalars['Boolean']['input'];
shippingPolicy: StorefrontAPI.Scalars['Boolean']['input'];
termsOfService: StorefrontAPI.Scalars['Boolean']['input'];
}>;
export type PolicyQuery = {
shop: {
privacyPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'body' | 'handle' | 'id' | 'title' | 'url'>
>;
shippingPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'body' | 'handle' | 'id' | 'title' | 'url'>
>;
termsOfService?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'body' | 'handle' | 'id' | 'title' | 'url'>
>;
refundPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'body' | 'handle' | 'id' | 'title' | 'url'>
>;
};
};
export type PolicyItemFragment = Pick<
StorefrontAPI.ShopPolicy,
'id' | 'title' | 'handle'
>;
export type PoliciesQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
}>;
export type PoliciesQuery = {
shop: {
privacyPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'id' | 'title' | 'handle'>
>;
shippingPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'id' | 'title' | 'handle'>
>;
termsOfService?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'id' | 'title' | 'handle'>
>;
refundPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicy, 'id' | 'title' | 'handle'>
>;
subscriptionPolicy?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ShopPolicyWithDefault, 'id' | 'title' | 'handle'>
>;
};
};
export type PdpRelatedProductsQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
query: StorefrontAPI.Scalars['String']['input'];
}>;
export type PdpRelatedProductsQuery = {
products: {
nodes: Array<
Pick<
StorefrontAPI.Product,
'id' | 'handle' | 'title' | 'vendor' | 'tags'
> & {
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'altText' | 'url' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
};
};
export type ProductVariantFragment = Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
};
export type ProductFragment = Pick<
StorefrontAPI.Product,
| 'id'
| 'title'
| 'vendor'
| 'handle'
| 'tags'
| 'descriptionHtml'
| 'description'
| 'encodedVariantExistence'
| 'encodedVariantAvailability'
> & {
media: {
nodes: Array<
| {__typename: 'ExternalVideo' | 'Model3d'}
| ({__typename: 'MediaImage'} & Pick<StorefrontAPI.MediaImage, 'id'> & {
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
})
| ({__typename: 'Video'} & Pick<StorefrontAPI.Video, 'id'> & {
previewImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
sources: Array<
Pick<
StorefrontAPI.VideoSource,
'url' | 'mimeType' | 'format' | 'height' | 'width'
>
>;
})
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'url' | 'altText' | 'width' | 'height'>
>;
images: {
nodes: Array<
Pick<StorefrontAPI.Image, 'id' | 'url' | 'altText' | 'width' | 'height'>
>;
};
options: Array<
Pick<StorefrontAPI.ProductOption, 'name'> & {
optionValues: Array<
Pick<StorefrontAPI.ProductOptionValue, 'name'> & {
firstSelectableVariant?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
}
>;
swatch?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ProductOptionValueSwatch, 'color'> & {
image?: StorefrontAPI.Maybe<{
previewImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url'>
>;
}>;
}
>;
}
>;
}
>;
selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
}
>;
adjacentVariants: Array<
Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
}
>;
seo: Pick<StorefrontAPI.Seo, 'description' | 'title'>;
};
export type PdpProductQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
handle: StorefrontAPI.Scalars['String']['input'];
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
selectedOptions:
| Array<StorefrontAPI.SelectedOptionInput>
| StorefrontAPI.SelectedOptionInput;
}>;
export type PdpProductQuery = {
product?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Product,
| 'id'
| 'title'
| 'vendor'
| 'handle'
| 'tags'
| 'descriptionHtml'
| 'description'
| 'encodedVariantExistence'
| 'encodedVariantAvailability'
> & {
media: {
nodes: Array<
| {__typename: 'ExternalVideo' | 'Model3d'}
| ({__typename: 'MediaImage'} & Pick<
StorefrontAPI.MediaImage,
'id'
> & {
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
})
| ({__typename: 'Video'} & Pick<StorefrontAPI.Video, 'id'> & {
previewImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
sources: Array<
Pick<
StorefrontAPI.VideoSource,
'url' | 'mimeType' | 'format' | 'height' | 'width'
>
>;
})
>;
};
featuredImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'url' | 'altText' | 'width' | 'height'>
>;
images: {
nodes: Array<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
};
options: Array<
Pick<StorefrontAPI.ProductOption, 'name'> & {
optionValues: Array<
Pick<StorefrontAPI.ProductOptionValue, 'name'> & {
firstSelectableVariant?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
}
>;
swatch?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ProductOptionValueSwatch, 'color'> & {
image?: StorefrontAPI.Maybe<{
previewImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url'>
>;
}>;
}
>;
}
>;
}
>;
selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
}
>;
adjacentVariants: Array<
Pick<
StorefrontAPI.ProductVariant,
'availableForSale' | 'id' | 'sku' | 'title'
> & {
compareAtPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
image?: StorefrontAPI.Maybe<
{__typename: 'Image'} & Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
product: Pick<StorefrontAPI.Product, 'title' | 'handle'>;
selectedOptions: Array<
Pick<StorefrontAPI.SelectedOption, 'name' | 'value'>
>;
unitPrice?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>
>;
}
>;
seo: Pick<StorefrontAPI.Seo, 'description' | 'title'>;
}
>;
};
export type SearchProductFragment = {__typename: 'Product'} & Pick<
StorefrontAPI.Product,
| 'id'
| 'handle'
| 'publishedAt'
| 'title'
| 'trackingParameters'
| 'vendor'
| 'tags'
> & {
featuredImage?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'id' | 'url' | 'altText' | 'width' | 'height'>
>;
priceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
compareAtPriceRange: {
minVariantPrice: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
};
};
export type SearchPageFragment = {__typename: 'Page'} & Pick<
StorefrontAPI.Page,
'handle' | 'id' | 'title' | 'trackingParameters'
>;
export type SearchArticleFragment = {__typename: 'Article'} & Pick<
StorefrontAPI.Article,
'id' | 'handle' | 'title' | 'trackingParameters'
> & {blog: Pick<StorefrontAPI.Blog, 'handle'>};
export type PageInfoFragmentFragment = Pick<
StorefrontAPI.PageInfo,
'hasNextPage' | 'hasPreviousPage' | 'startCursor' | 'endCursor'
>;
export type RegularSearchQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
endCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
first?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
last?: StorefrontAPI.InputMaybe<StorefrontAPI.Scalars['Int']['input']>;
term: StorefrontAPI.Scalars['String']['input'];
startCursor?: StorefrontAPI.InputMaybe<
StorefrontAPI.Scalars['String']['input']
>;
}>;
export type RegularSearchQuery = {
articles: {
nodes: Array<
{__typename: 'Article'} & Pick<
StorefrontAPI.Article,
'id' | 'handle' | 'title' | 'trackingParameters'
> & {blog: Pick<StorefrontAPI.Blog, 'handle'>}
>;
};
pages: {
nodes: Array<
{__typename: 'Page'} & Pick<
StorefrontAPI.Page,
'handle' | 'id' | 'title' | 'trackingParameters'
>
>;
};
products: {
nodes: Array<
{__typename: 'Product'} & Pick<
StorefrontAPI.Product,
| 'id'
| 'handle'
| 'publishedAt'
| 'title'
| 'trackingParameters'
| 'vendor'
| 'tags'
> & {
featuredImage?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'id' | 'url' | 'altText' | 'width' | 'height'
>
>;
priceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
compareAtPriceRange: {
minVariantPrice: Pick<
StorefrontAPI.MoneyV2,
'amount' | 'currencyCode'
>;
};
}
>;
pageInfo: Pick<
StorefrontAPI.PageInfo,
'hasNextPage' | 'hasPreviousPage' | 'startCursor' | 'endCursor'
>;
};
};
export type PredictiveArticleFragment = {__typename: 'Article'} & Pick<
StorefrontAPI.Article,
'id' | 'title' | 'handle' | 'trackingParameters'
> & {
blog: Pick<StorefrontAPI.Blog, 'handle'>;
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
>;
};
export type PredictiveCollectionFragment = {__typename: 'Collection'} & Pick<
StorefrontAPI.Collection,
'id' | 'title' | 'handle' | 'trackingParameters'
> & {
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
>;
};
export type PredictivePageFragment = {__typename: 'Page'} & Pick<
StorefrontAPI.Page,
'id' | 'title' | 'handle' | 'trackingParameters'
>;
export type PredictiveProductFragment = {__typename: 'Product'} & Pick<
StorefrontAPI.Product,
'id' | 'title' | 'handle' | 'trackingParameters'
> & {
selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ProductVariant, 'id'> & {
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
}
>;
};
export type PredictiveQueryFragment = {
__typename: 'SearchQuerySuggestion';
} & Pick<
StorefrontAPI.SearchQuerySuggestion,
'text' | 'styledText' | 'trackingParameters'
>;
export type PredictiveSearchQueryVariables = StorefrontAPI.Exact<{
country?: StorefrontAPI.InputMaybe<StorefrontAPI.CountryCode>;
language?: StorefrontAPI.InputMaybe<StorefrontAPI.LanguageCode>;
limit: StorefrontAPI.Scalars['Int']['input'];
limitScope: StorefrontAPI.PredictiveSearchLimitScope;
term: StorefrontAPI.Scalars['String']['input'];
types?: StorefrontAPI.InputMaybe<
| Array<StorefrontAPI.PredictiveSearchType>
| StorefrontAPI.PredictiveSearchType
>;
}>;
export type PredictiveSearchQuery = {
predictiveSearch?: StorefrontAPI.Maybe<{
articles: Array<
{__typename: 'Article'} & Pick<
StorefrontAPI.Article,
'id' | 'title' | 'handle' | 'trackingParameters'
> & {
blog: Pick<StorefrontAPI.Blog, 'handle'>;
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
>;
}
>;
collections: Array<
{__typename: 'Collection'} & Pick<
StorefrontAPI.Collection,
'id' | 'title' | 'handle' | 'trackingParameters'
> & {
image?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.Image, 'url' | 'altText' | 'width' | 'height'>
>;
}
>;
pages: Array<
{__typename: 'Page'} & Pick<
StorefrontAPI.Page,
'id' | 'title' | 'handle' | 'trackingParameters'
>
>;
products: Array<
{__typename: 'Product'} & Pick<
StorefrontAPI.Product,
'id' | 'title' | 'handle' | 'trackingParameters'
> & {
selectedOrFirstAvailableVariant?: StorefrontAPI.Maybe<
Pick<StorefrontAPI.ProductVariant, 'id'> & {
image?: StorefrontAPI.Maybe<
Pick<
StorefrontAPI.Image,
'url' | 'altText' | 'width' | 'height'
>
>;
price: Pick<StorefrontAPI.MoneyV2, 'amount' | 'currencyCode'>;
}
>;
}
>;
queries: Array<
{__typename: 'SearchQuerySuggestion'} & Pick<
StorefrontAPI.SearchQuerySuggestion,
'text' | 'styledText' | 'trackingParameters'
>
>;
}>;
};
interface GeneratedQueryTypes {
'#graphql\n query FeaturedProductsCatalog(\n $country: CountryCode\n $language: LanguageCode\n $query: String!\n ) @inContext(country: $country, language: $language) {\n products(first: 10, query: $query) {\n nodes {\n ...FeaturedProductNode\n }\n }\n }\n #graphql\n fragment FeaturedProductNode on Product {\n id\n handle\n title\n vendor\n tags\n variants(first: 1) {\n nodes {\n id\n availableForSale\n }\n }\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyFeaturedProduct\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n ...MoneyFeaturedProduct\n }\n }\n }\n #graphql\n fragment MoneyFeaturedProduct on MoneyV2 {\n amount\n currencyCode\n }\n\n\n': {
return: FeaturedProductsCatalogQuery;
variables: FeaturedProductsCatalogQueryVariables;
};
'#graphql\n query WishlistProductsCatalog(\n $country: CountryCode\n $language: LanguageCode\n $query: String!\n ) @inContext(country: $country, language: $language) {\n products(first: 50, query: $query) {\n nodes {\n ...FeaturedProductNode\n }\n }\n }\n #graphql\n fragment FeaturedProductNode on Product {\n id\n handle\n title\n vendor\n tags\n variants(first: 1) {\n nodes {\n id\n availableForSale\n }\n }\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyFeaturedProduct\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n ...MoneyFeaturedProduct\n }\n }\n }\n #graphql\n fragment MoneyFeaturedProduct on MoneyV2 {\n amount\n currencyCode\n }\n\n\n': {
return: WishlistProductsCatalogQuery;
variables: WishlistProductsCatalogQueryVariables;
};
'#graphql\n query FrontpageFeaturedCollection(\n $country: CountryCode\n $language: LanguageCode\n $handle: String!\n $first: Int!\n ) @inContext(country: $country, language: $language) {\n collection(handle: $handle) {\n id\n handle\n products(first: $first) {\n nodes {\n ...FeaturedProductNode\n }\n }\n }\n }\n #graphql\n fragment FeaturedProductNode on Product {\n id\n handle\n title\n vendor\n tags\n variants(first: 1) {\n nodes {\n id\n availableForSale\n }\n }\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyFeaturedProduct\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n ...MoneyFeaturedProduct\n }\n }\n }\n #graphql\n fragment MoneyFeaturedProduct on MoneyV2 {\n amount\n currencyCode\n }\n\n\n': {
return: FrontpageFeaturedCollectionQuery;
variables: FrontpageFeaturedCollectionQueryVariables;
};
'#graphql\n fragment Shop on Shop {\n id\n name\n description\n primaryDomain {\n url\n }\n brand {\n shortDescription\n slogan\n logo {\n image {\n id\n url\n altText\n width\n height\n }\n }\n }\n }\n query Header(\n $country: CountryCode\n $headerMenuHandle: String!\n $language: LanguageCode\n ) @inContext(language: $language, country: $country) {\n shop {\n ...Shop\n }\n menu(handle: $headerMenuHandle) {\n ...Menu\n }\n }\n #graphql\n fragment MenuItem on MenuItem {\n id\n resourceId\n tags\n title\n type\n url\n }\n fragment ChildMenuItem on MenuItem {\n ...MenuItem\n }\n fragment ParentMenuItem on MenuItem {\n ...MenuItem\n items {\n ...ChildMenuItem\n }\n }\n fragment Menu on Menu {\n id\n items {\n ...ParentMenuItem\n }\n }\n\n': {
return: HeaderQuery;
variables: HeaderQueryVariables;
};
'#graphql\n query Footer(\n $country: CountryCode\n $footerMenuHandle: String!\n $language: LanguageCode\n ) @inContext(language: $language, country: $country) {\n menu(handle: $footerMenuHandle) {\n ...Menu\n }\n }\n #graphql\n fragment MenuItem on MenuItem {\n id\n resourceId\n tags\n title\n type\n url\n }\n fragment ChildMenuItem on MenuItem {\n ...MenuItem\n }\n fragment ParentMenuItem on MenuItem {\n ...MenuItem\n items {\n ...ChildMenuItem\n }\n }\n fragment Menu on Menu {\n id\n items {\n ...ParentMenuItem\n }\n }\n\n': {
return: FooterQuery;
variables: FooterQueryVariables;
};
'#graphql\n query SpringGlowBundleVariant($handle: String!) {\n product(handle: $handle) {\n selectedOrFirstAvailableVariant {\n id\n }\n }\n }\n': {
return: SpringGlowBundleVariantQuery;
variables: SpringGlowBundleVariantQueryVariables;
};
'#graphql\n query Article(\n $articleHandle: String!\n $blogHandle: String!\n $country: CountryCode\n $language: LanguageCode\n ) @inContext(language: $language, country: $country) {\n blog(handle: $blogHandle) {\n handle\n articleByHandle(handle: $articleHandle) {\n handle\n title\n contentHtml\n publishedAt\n author: authorV2 {\n name\n }\n image {\n id\n altText\n url\n width\n height\n }\n seo {\n description\n title\n }\n }\n }\n }\n': {
return: ArticleQuery;
variables: ArticleQueryVariables;
};
'#graphql\n query Blog(\n $language: LanguageCode\n $blogHandle: String!\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(language: $language) {\n blog(handle: $blogHandle) {\n title\n handle\n seo {\n title\n description\n }\n articles(\n first: $first,\n last: $last,\n before: $startCursor,\n after: $endCursor\n ) {\n nodes {\n ...ArticleItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n hasNextPage\n endCursor\n startCursor\n }\n\n }\n }\n }\n fragment ArticleItem on Article {\n author: authorV2 {\n name\n }\n contentHtml\n handle\n id\n image {\n id\n altText\n url\n width\n height\n }\n publishedAt\n title\n blog {\n handle\n }\n }\n': {
return: BlogQuery;
variables: BlogQueryVariables;
};
'#graphql\n query Blogs(\n $country: CountryCode\n $endCursor: String\n $first: Int\n $language: LanguageCode\n $last: Int\n $startCursor: String\n ) @inContext(country: $country, language: $language) {\n blogs(\n first: $first,\n last: $last,\n before: $startCursor,\n after: $endCursor\n ) {\n pageInfo {\n hasNextPage\n hasPreviousPage\n startCursor\n endCursor\n }\n nodes {\n title\n handle\n seo {\n title\n description\n }\n }\n }\n }\n': {
return: BlogsQuery;
variables: BlogsQueryVariables;
};
'#graphql\n #graphql\n fragment MoneyProductItem on MoneyV2 {\n amount\n currencyCode\n }\n fragment ProductItem on Product {\n id\n handle\n title\n vendor\n tags\n variants(first: 1) {\n nodes {\n id\n availableForSale\n }\n }\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyProductItem\n }\n maxVariantPrice {\n ...MoneyProductItem\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n ...MoneyProductItem\n }\n }\n }\n\n query Collection(\n $handle: String!\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n ) @inContext(country: $country, language: $language) {\n collection(handle: $handle) {\n id\n handle\n title\n products(\n first: $first\n last: $last\n before: $startCursor\n after: $endCursor\n ) {\n nodes {\n ...ProductItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n endCursor\n startCursor\n }\n }\n }\n }\n': {
return: CollectionQuery;
variables: CollectionQueryVariables;
};
'#graphql\n #graphql\n fragment MoneyCollectionItem on MoneyV2 {\n amount\n currencyCode\n }\n fragment CollectionItem on Product {\n id\n handle\n title\n vendor\n tags\n variants(first: 1) {\n nodes {\n id\n availableForSale\n }\n }\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n ...MoneyCollectionItem\n }\n maxVariantPrice {\n ...MoneyCollectionItem\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n ...MoneyCollectionItem\n }\n }\n }\n\n query SkincareCollectionCatalog(\n $id: ID!\n $country: CountryCode\n $language: LanguageCode\n $first: Int\n $last: Int\n $startCursor: String\n $endCursor: String\n $sortKey: ProductCollectionSortKeys\n $reverse: Boolean\n ) @inContext(country: $country, language: $language) {\n collection(id: $id) {\n id\n handle\n title\n products(\n first: $first\n last: $last\n before: $startCursor\n after: $endCursor\n sortKey: $sortKey\n reverse: $reverse\n ) {\n nodes {\n ...CollectionItem\n }\n pageInfo {\n hasPreviousPage\n hasNextPage\n startCursor\n endCursor\n }\n }\n }\n }\n': {
return: SkincareCollectionCatalogQuery;
variables: SkincareCollectionCatalogQueryVariables;
};
'#graphql\n query Page(\n $language: LanguageCode,\n $country: CountryCode,\n $handle: String!\n )\n @inContext(language: $language, country: $country) {\n page(handle: $handle) {\n handle\n id\n title\n body\n seo {\n description\n title\n }\n }\n }\n': {
return: PageQuery;
variables: PageQueryVariables;
};
'#graphql\n fragment Policy on ShopPolicy {\n body\n handle\n id\n title\n url\n }\n query Policy(\n $country: CountryCode\n $language: LanguageCode\n $privacyPolicy: Boolean!\n $refundPolicy: Boolean!\n $shippingPolicy: Boolean!\n $termsOfService: Boolean!\n ) @inContext(language: $language, country: $country) {\n shop {\n privacyPolicy @include(if: $privacyPolicy) {\n ...Policy\n }\n shippingPolicy @include(if: $shippingPolicy) {\n ...Policy\n }\n termsOfService @include(if: $termsOfService) {\n ...Policy\n }\n refundPolicy @include(if: $refundPolicy) {\n ...Policy\n }\n }\n }\n': {
return: PolicyQuery;
variables: PolicyQueryVariables;
};
'#graphql\n fragment PolicyItem on ShopPolicy {\n id\n title\n handle\n }\n query Policies ($country: CountryCode, $language: LanguageCode)\n @inContext(country: $country, language: $language) {\n shop {\n privacyPolicy {\n ...PolicyItem\n }\n shippingPolicy {\n ...PolicyItem\n }\n termsOfService {\n ...PolicyItem\n }\n refundPolicy {\n ...PolicyItem\n }\n subscriptionPolicy {\n id\n title\n handle\n }\n }\n }\n': {
return: PoliciesQuery;
variables: PoliciesQueryVariables;
};
'#graphql\n query PdpRelatedProducts(\n $country: CountryCode\n $language: LanguageCode\n $query: String!\n ) @inContext(country: $country, language: $language) {\n products(first: 6, query: $query) {\n nodes {\n id\n handle\n title\n vendor\n tags\n featuredImage {\n id\n altText\n url\n width\n height\n }\n priceRange {\n minVariantPrice {\n amount\n currencyCode\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n amount\n currencyCode\n }\n }\n }\n }\n }\n': {
return: PdpRelatedProductsQuery;
variables: PdpRelatedProductsQueryVariables;
};
'#graphql\n query PdpProduct(\n $country: CountryCode\n $handle: String!\n $language: LanguageCode\n $selectedOptions: [SelectedOptionInput!]!\n ) @inContext(country: $country, language: $language) {\n product(handle: $handle) {\n ...Product\n }\n }\n #graphql\n fragment Product on Product {\n id\n title\n vendor\n handle\n tags\n descriptionHtml\n description\n media(first: 10) {\n nodes {\n __typename\n ... on MediaImage {\n id\n image {\n id\n url\n altText\n width\n height\n }\n }\n ... on Video {\n id\n previewImage {\n id\n url\n altText\n width\n height\n }\n sources {\n url\n mimeType\n format\n height\n width\n }\n }\n }\n }\n featuredImage {\n id\n url\n altText\n width\n height\n }\n images(first: 10) {\n nodes {\n id\n url\n altText\n width\n height\n }\n }\n encodedVariantExistence\n encodedVariantAvailability\n options {\n name\n optionValues {\n name\n firstSelectableVariant {\n ...ProductVariant\n }\n swatch {\n color\n image {\n previewImage {\n url\n }\n }\n }\n }\n }\n selectedOrFirstAvailableVariant(\n selectedOptions: $selectedOptions\n ignoreUnknownOptions: true\n caseInsensitiveMatch: true\n ) {\n ...ProductVariant\n }\n adjacentVariants(selectedOptions: $selectedOptions) {\n ...ProductVariant\n }\n seo {\n description\n title\n }\n }\n #graphql\n fragment ProductVariant on ProductVariant {\n availableForSale\n compareAtPrice {\n amount\n currencyCode\n }\n id\n image {\n __typename\n id\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n product {\n title\n handle\n }\n selectedOptions {\n name\n value\n }\n sku\n title\n unitPrice {\n amount\n currencyCode\n }\n }\n\n\n': {
return: PdpProductQuery;
variables: PdpProductQueryVariables;
};
'#graphql\n query RegularSearch(\n $country: CountryCode\n $endCursor: String\n $first: Int\n $language: LanguageCode\n $last: Int\n $term: String!\n $startCursor: String\n ) @inContext(country: $country, language: $language) {\n articles: search(\n query: $term,\n types: [ARTICLE],\n first: $first,\n ) {\n nodes {\n ...on Article {\n ...SearchArticle\n }\n }\n }\n pages: search(\n query: $term,\n types: [PAGE],\n first: $first,\n ) {\n nodes {\n ...on Page {\n ...SearchPage\n }\n }\n }\n products: search(\n after: $endCursor,\n before: $startCursor,\n first: $first,\n last: $last,\n query: $term,\n sortKey: RELEVANCE,\n types: [PRODUCT],\n unavailableProducts: HIDE,\n ) {\n nodes {\n ...on Product {\n ...SearchProduct\n }\n }\n pageInfo {\n ...PageInfoFragment\n }\n }\n }\n #graphql\n fragment SearchProduct on Product {\n __typename\n id\n handle\n publishedAt\n title\n trackingParameters\n vendor\n tags\n featuredImage {\n id\n url\n altText\n width\n height\n }\n priceRange {\n minVariantPrice {\n amount\n currencyCode\n }\n }\n compareAtPriceRange {\n minVariantPrice {\n amount\n currencyCode\n }\n }\n }\n\n #graphql\n fragment SearchPage on Page {\n __typename\n handle\n id\n title\n trackingParameters\n }\n\n #graphql\n fragment SearchArticle on Article {\n __typename\n id\n handle\n title\n trackingParameters\n blog {\n handle\n }\n }\n\n #graphql\n fragment PageInfoFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n startCursor\n endCursor\n }\n\n': {
return: RegularSearchQuery;
variables: RegularSearchQueryVariables;
};
'#graphql\n query PredictiveSearch(\n $country: CountryCode\n $language: LanguageCode\n $limit: Int!\n $limitScope: PredictiveSearchLimitScope!\n $term: String!\n $types: [PredictiveSearchType!]\n ) @inContext(country: $country, language: $language) {\n predictiveSearch(\n limit: $limit,\n limitScope: $limitScope,\n query: $term,\n types: $types,\n ) {\n articles {\n ...PredictiveArticle\n }\n collections {\n ...PredictiveCollection\n }\n pages {\n ...PredictivePage\n }\n products {\n ...PredictiveProduct\n }\n queries {\n ...PredictiveQuery\n }\n }\n }\n #graphql\n fragment PredictiveArticle on Article {\n __typename\n id\n title\n handle\n blog {\n handle\n }\n image {\n url\n altText\n width\n height\n }\n trackingParameters\n }\n\n #graphql\n fragment PredictiveCollection on Collection {\n __typename\n id\n title\n handle\n image {\n url\n altText\n width\n height\n }\n trackingParameters\n }\n\n #graphql\n fragment PredictivePage on Page {\n __typename\n id\n title\n handle\n trackingParameters\n }\n\n #graphql\n fragment PredictiveProduct on Product {\n __typename\n id\n title\n handle\n trackingParameters\n selectedOrFirstAvailableVariant(\n selectedOptions: []\n ignoreUnknownOptions: true\n caseInsensitiveMatch: true\n ) {\n id\n image {\n url\n altText\n width\n height\n }\n price {\n amount\n currencyCode\n }\n }\n }\n\n #graphql\n fragment PredictiveQuery on SearchQuerySuggestion {\n __typename\n text\n styledText\n trackingParameters\n }\n\n': {
return: PredictiveSearchQuery;
variables: PredictiveSearchQueryVariables;
};
}
interface GeneratedMutationTypes {}
declare module '@shopify/hydrogen' {
interface StorefrontQueries extends GeneratedQueryTypes {}
interface StorefrontMutations extends GeneratedMutationTypes {}
}