@megaads/wm
Version:
To install the library, use npm:
79 lines (71 loc) • 1.71 kB
text/typescript
export interface Variant {
id: number;
slug: string;
values: Array<{
id: number;
variant_id?: number;
variant_slug?: string;
is_selected?: boolean,
name?: string,
slug?: string,
price?: number,
original_price?: number,
high_price?: number,
}>;
type?: string;
show_invalid?: boolean;
show_invalid_above?: boolean;
current_value_name?: string;
current_value_id?: number;
}
export interface ProductVariant {
id: number;
sku: string
variants: number[];
price: number;
high_price: number;
}
export interface Galleries {
[key: number]: string[];
}
export interface BulkPriceData {
[key: number]: BulkPriceItem[];
}
export interface BulkPriceItem {
id: number,
product_id: number,
product_sku_id: number,
price: number,
min_quantity: number,
actor_id: number,
created_at: string,
updated_at: string
}
export interface VariantsOptions {
variants: Variant[];
productVariants: ProductVariant[];
galleries: Galleries;
bulkPriceData: BulkPriceData
}
export interface VariantStatistic {
[key: string]: {
id: number;
sku_key: string;
count: number;
price: number;
high_price: number;
};
}
export interface ProductVariants {
productById: { [key: number]: ProductVariant };
productByUniqId: { [key: string]: ProductVariant };
productByUniqIdAbove: { [key: string]: ProductVariant };
}
export interface ProductSkuDetail {
product: ProductVariant,
variants: Variant[],
galleries: string[],
price: number,
original_price: number,
high_price: number,
}