UNPKG

@fabrix/spool-cart

Version:

Spool - eCommerce Spool for Fabrix

248 lines (247 loc) 6.92 kB
import { FabrixModel as Model } from '@fabrix/fabrix/dist/common'; import { SequelizeResolver } from '@fabrix/spool-sequelize'; export declare class ProductResolver extends SequelizeResolver { findByIdDefault(criteria: any, options?: { [key: string]: any; }): any; findByHandleDefault(handle: any, options?: { [key: string]: any; }): any; findOneDefault(options?: { [key: string]: any; }): any; findAllDefault(options?: {}): any; findAndCountDefault(options: any): any; resolveByInstance(product: any, options?: { [key: string]: any; }): Promise<any>; resolveById(product: any, options?: { [key: string]: any; }): any; resolveByToken(product: any, options?: { [key: string]: any; }): any; resolveByhandle(product: any, options?: { [key: string]: any; }): any; resolveByNumber(product: any, options?: { [key: string]: any; }): any; resolveByString(product: any, options?: { [key: string]: any; }): any; resolve(product: any, options?: { [key: string]: any; }): any; } export declare class Product extends Model { static readonly resolver: typeof ProductResolver; static config(app: any, Sequelize: any): { options: { enums: { UNITS: { G: string; KG: string; OZ: string; LB: string; }; PRODUCT_DEFAULTS: { HOST: string; TAX_CODE: string; PRICE: number; CALCULATED_PRICE: number; DISCOUNTED_LINES: any[]; TOTAL_DISCOUNTS: number; CURRENCY: string; PUBLISHED_SCOPE: string; PUBLISHED: boolean; AVAILABLE: boolean; OPTIONS: any[]; WEIGHT: number; WEIGHT_UNIT: string; REVIEWS_SCORE: number; TOTAL_REVIEWS: number; TOTAL_VARIANTS: number; }; }; underscored: boolean; scopes: { live: { where: { live_mode: boolean; }; }; published: { where: { published: boolean; }; }; }; hooks: { beforeValidate: ((product: any, options: any) => void)[]; beforeCreate: ((product: any, options: any) => any)[]; beforeUpdate: ((product: any, options: any) => any)[]; }; }; }; static schema(app: any, Sequelize: any): { host: { type: any; defaultValue: string; }; handle: { type: any; allowNull: boolean; unique: boolean; set: (val: any) => void; }; title: { type: any; set: (val: any) => void; }; body: { type: any; }; html: { type: any; }; seo_title: { type: any; set: (val: any) => void; }; seo_description: { type: any; set: (val: any) => void; }; type: { type: any; allowNull: boolean; set: (val: any) => void; }; tax_code: { type: any; defaultValue: string; }; compare_at_price: { type: any; defaultValue: number; }; price: { type: any; defaultValue: number; }; calculated_price: { type: any; defaultValue: number; }; currency: { type: any; defaultValue: string; }; total_orders: { type: any; defaultValue: number; }; discounted_lines: { type: any; defaultValue: any[]; }; total_discounts: { type: any; defaultValue: number; }; published_scope: { type: any; defaultValue: string; }; published: { type: any; defaultValue: boolean; }; published_at: { type: any; }; unpublished_at: { type: any; }; available: { type: any; defaultValue: boolean; }; options: { type: any; defaultValue: any[]; }; property_pricing: { type: any; defaultValue: {}; }; weight: { type: any; defaultValue: number; }; weight_unit: { type: any; values: string[]; defaultValue: string; }; review_score: { type: any; defaultValue: number; }; total_reviews: { type: any; defaultValue: number; }; total_variants: { type: any; defaultValue: number; }; average_shipping: { type: any; defaultValue: number; }; exclude_payment_types: { type: any; defaultValue: any[]; }; google: { type: any; defaultValue: {}; }; amazon: { type: any; defaultValue: {}; }; live_mode: { type: any; defaultValue: any; }; }; static associate(models: any): void; } export interface Product { setItemDiscountedLines(discounts: any, criteria: any, options: any): any; setDiscountedLines(lines: any): any; setCalculatedPrice(calculatedPrice: any): any; setTotals(): any; getCustomerHistory(customer: any, options: any): any; hasPurchaseHistory(customerId: any, options: any): any; isSubscribed(customerId: any, options: any): any; getCollectionPairs(options: any): any; calculateDiscounts(options: any): any; calculate(options: any): any; mergeIntoCollections(colsB: any): any; toJSON(): any; resolveVariants(options: any): any; getDefaultVariant(options: any): any; resolveAssociations(options: any): any; resolveImages(options: any): any; resolveVendors(options: any): any; resolveMetadata(options: any): any; resolveShops(options: any): any; resolveTags(options: any): any; resolveCollections(options: any): any; resolveCoupons(options: any): any; resolveDiscounts(options: any): any; }