Shopvento UI - v0.2.0
    Preparing search index...

    Type Alias ShopProduct

    Host presentation model for a product card. Amounts are integer cents; map catalogue data explicitly.

    type ShopProduct = {
        adultOnly?: boolean;
        availability?: string;
        badges?: string[];
        badgeTones?: Record<string, "accent" | "success">;
        category: string;
        customerDefinedPrice?: boolean;
        declarations?: { label: string; value: string }[];
        description?: string;
        id: string;
        illustrationCapColor?: string;
        illustrationColor?: string;
        image?: string;
        imageAlt?: string;
        minimumPrice?: number;
        pickupOnly?: boolean;
        placeholder?: "bottle" | "jar" | "gift";
        price: number;
        producer?: string;
        quantityInformation?: string;
        slug: string;
        subtitle?: string;
        tint?: string;
        title: string;
        unavailable?: boolean;
        unitPrice?: string;
        variants?: {
            adultOnly?: boolean;
            id: string;
            name: string;
            price: number;
            unitPrice?: string;
        }[];
        withdrawalExcluded?: boolean;
        withdrawalNotice?: string;
    }
    Index
    adultOnly?: boolean

    Whether age verification applies. Optional; omitted unless supplied by the host or backend.

    availability?: string

    Host availability copy. Optional; omitted unless supplied by the host or backend.

    badges?: string[]

    Host product badge labels. Optional; omitted unless supplied by the host or backend.

    badgeTones?: Record<string, "accent" | "success">

    Optional semantic tones keyed by badge label. Optional; omitted unless supplied by the host or backend.

    category: string

    Host product category label.

    customerDefinedPrice?: boolean

    Whether the host permits a customer-entered amount. Optional; omitted unless supplied by the host or backend.

    declarations?: { label: string; value: string }[]

    Host-supplied product declaration rows. Optional; omitted unless supplied by the host or backend.

    Type Declaration

    • label: string

      Accessible customer-visible label.

    • value: string

      Current controlled value.

    description?: string

    Host-owned product or section description. Optional; omitted unless supplied by the host or backend.

    id: string

    Opaque backend identifier or accessible element ID.

    illustrationCapColor?: string

    Host illustration cap color. Optional; omitted unless supplied by the host or backend.

    illustrationColor?: string

    Host illustration fill color. Optional; omitted unless supplied by the host or backend.

    image?: string

    Host image URL. Optional; omitted unless supplied by the host or backend.

    imageAlt?: string

    Accessible image description. Optional; omitted unless supplied by the host or backend.

    minimumPrice?: number

    Minimum customer-defined price in integer cents. Optional; omitted unless supplied by the host or backend.

    pickupOnly?: boolean

    Whether fulfillment is pickup only. Optional; omitted unless supplied by the host or backend.

    placeholder?: "bottle" | "jar" | "gift"

    Built-in product illustration used when no image is supplied. Optional; omitted unless supplied by the host or backend.

    price: number

    Price in integer cents.

    producer?: string

    Optional host producer label. Optional; omitted unless supplied by the host or backend.

    quantityInformation?: string

    Host-formatted quantity information. Optional; omitted unless supplied by the host or backend.

    slug: string

    URL-safe host product slug.

    subtitle?: string

    Optional host product subtitle. Optional; omitted unless supplied by the host or backend.

    tint?: string

    Host illustration background color. Optional; omitted unless supplied by the host or backend.

    title: string

    Customer-visible heading or title supplied by the host.

    unavailable?: boolean

    Disable purchase presentation when true. Optional; omitted unless supplied by the host or backend.

    unitPrice?: string

    Host-formatted unit price. Optional; omitted unless supplied by the host or backend.

    variants?: {
        adultOnly?: boolean;
        id: string;
        name: string;
        price: number;
        unitPrice?: string;
    }[]

    Public event variants with backend prices. Optional; omitted unless supplied by the host or backend.

    Type Declaration

    • OptionaladultOnly?: boolean

      Whether age verification applies. Optional; omitted unless supplied by the host or backend.

    • id: string

      Opaque backend identifier or accessible element ID.

    • name: string

      Selected icon or backend name.

    • price: number

      Price in integer cents.

    • OptionalunitPrice?: string

      Host-formatted unit price. Optional; omitted unless supplied by the host or backend.

    withdrawalExcluded?: boolean

    Whether the backend excludes this item from withdrawal. Optional; omitted unless supplied by the host or backend.

    withdrawalNotice?: string

    Host withdrawal notice. Optional; omitted unless supplied by the host or backend.