@wocart/storefront / index / StoreConfig
Interface: StoreConfig
The storefront's view of the store, in one language — config.get().
Every merchant text is in locale; a field holds exactly what a theme
reads, nothing the server keeps to itself.
Properties
cartEnabled
cartEnabled:
boolean
When true the storefront renders the cart alongside the direct order form.
checkoutForm
checkoutForm:
CheckoutFormPolicy
contact
contact:
StoreContact
How a shopper reaches the store, besides WhatsApp: each null until the merchant writes it.
contentOverrides
contentOverrides:
Record<string,Record<string,string>>
The store's edits to this theme's text, one map per published language:
{ ar: { heroTitle: "…" } }. Sent only to a client created with theme.
A theme merges contentOverrides[locale] over its own pack for that
language — never another language's map.
conversionEvent
conversionEvent:
"Purchase"|"Purchase_Confirmed"|"Purchase_Delivered"|"Lead"
currency
currency:
string
currencySymbol
currencySymbol:
string
In locale: "دج" in Arabic reads "DA" in French.
domain
domain:
string
freeShippingThreshold
freeShippingThreshold:
number
Subtotal (DZD) at or above which delivery is free. null = no threshold.
id
id:
string
lang
lang:
string
The store's primary language: a BCP 47 code such as ar.
locale
locale:
string
The language this config was served in: the client's locale when the
store publishes it, lang otherwise.
locales
locales:
StorefrontLanguage[]
The published languages, primary first (always includes lang).
logo
logo:
MediaImage
media
media:
MediaDelivery
Where every image key is served from, and how it is resized: pass it to mediaUrl, mediaImageUrl and pictureOf.
metaDescription
metaDescription:
string
metaTitle
metaTitle:
string
name
name:
string
ogImage
ogImage:
MediaImage
The image links to the store show when shared.
otpEnabled
otpEnabled:
boolean
pages
pages:
StorePageLink[]
Published pages that opt into the footer, titled in locale, ordered for
display. The checkout consent line resolves Terms/Refund from here by
kind — never a hardcoded slug, since a merchant may rename any page's
slug freely.
pixelId
pixelId:
string
reviewsEnabled
reviewsEnabled:
boolean
themeSettings
themeSettings:
Record<string,unknown>
The merchant's values for this theme's settings, by setting key, exactly
as saved — {} when there are none or the client was created without
theme. Read them against the theme's declaration with
resolveThemeSettings from @wocart/theme: a value the theme no longer
accepts falls back to its default there.
turnstileEnabled
turnstileEnabled:
boolean
Cloudflare Turnstile — true only when the store switched it on.
turnstileSiteKey
turnstileSiteKey:
string
Public widget site key; null when Turnstile is off. The secret never leaves the server.
whatsapp:
StoreWhatsAppWidget
The WhatsApp button, or null when the store has none. Read it through whatsAppContact.