Skip to content

Instantly share code, notes, and snippets.

@threetwotwo
Last active September 14, 2021 09:13
Show Gist options
  • Select an option

  • Save threetwotwo/1b20df530e7695055e5869eab5735e53 to your computer and use it in GitHub Desktop.

Select an option

Save threetwotwo/1b20df530e7695055e5869eab5735e53 to your computer and use it in GitHub Desktop.
export interface FireProductNormalized extends FireModel {
store_id: string;
user_id: string;
paused: boolean;
///provider source: eg. woocommerce
source?: string;
///Returns the description of the product.
description?: string;
/// For Algolia sorting
/// These fields should be properly updated
///Returns the lowest compare at price of all the product's variants entered in the Shopify admin. This attribute is similar to product.compare_at_price_min.
///If none of the product variants have a value for compare at price, product.compare_at_price will return 0.
compare_at_price?: number;
///Returns the lowest price of all the product's variants. This attribute is the same as product.price_min.
price?: number;
product_id?: number;
created_at?: string;
updated_at?: string;
body_html?: string;
handle?: string;
product_type?: string;
title?: string;
vendor?: string;
available?: boolean;
/// Should be an array
tags?: Array<null | string>;
published_at?: string;
/// For Algolia filtering
/// These fields should be properly updated
variants_title?: Array<null | string>;
options_name?: Array<null | string>;
options_values?: Array<null | string[]>;
/// Array of variant objects
variants?: Array<null | Variant>;
/// Array of options objects
options?: Array<null | Option>;
/// Array of Image objects
images?: Array<null | Image>;
}
export interface Option {
id?: string;
product_id?: string;
name?: string;
position?: number;
values?: Array<null | string>;
}
export interface Variant {
id?: string;
product_id?: string;
created_at?: string;
updated_at?: string;
title?: string;
price?: number;
compare_at_price?: number;
formatted_price?: string;
position?: number;
inventory_item_id?: string;
inventory_quantity?: number;
inventory_management?: string;
inventory_policy?: string;
sku?: string;
barcode?: number;
taxable?: boolean;
position?: number;
grams?: number;
weight?: number;
weight_unit?: string;
fulfillment_service?: string;
requires_shipping?: boolean;
options?: Array<null | string>;
image?: Image;
}
export interface Image {
id?: string;
created_at?: string;
updated_at?: string;
height?: number;
width?: number;
src?: string;
product_id?: string;
position?: number;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment