@fabrix/spool-cart
Version:
Spool - eCommerce Spool for Fabrix
471 lines (470 loc) • 13.2 kB
TypeScript
import { FabrixModel as Model } from '@fabrix/fabrix/dist/common';
import { SequelizeResolver } from '@fabrix/spool-sequelize';
export declare class OrderResolver extends SequelizeResolver {
findByIdDefault(id: any, options?: {}): any;
findByTokenDefault(token: any, options?: {}): any;
findAndCountDefault(options?: {}): any;
resolveByInstance(order: any, options?: {
[key: string]: any;
}): Promise<any>;
resolveById(order: any, options?: {
[key: string]: any;
}): any;
resolveByToken(order: any, options?: {
[key: string]: any;
}): any;
resolveByNumber(order: any, options?: {
[key: string]: any;
}): any;
resolveByString(order: any, options?: {
[key: string]: any;
}): any;
resolve(order: any, options?: {
[key: string]: any;
}): any;
}
export declare class Order extends Model {
static readonly resolver: typeof OrderResolver;
static config(app: any, Sequelize: any): {
options: {
autoSave: boolean;
underscored: boolean;
enums: {
ORDER_STATUS: {
OPEN: string;
CLOSED: string;
CANCELLED: string;
DRAFT: string;
};
ORDER_CANCEL: {
CUSTOMER: string;
FRAUD: string;
INVENTORY: string;
OTHER: string;
};
ORDER_FINANCIAL: {
CANCELLED: string;
PENDING: string;
AUTHORIZED: string;
PARTIALLY_PAID: string;
PAID: string;
PARTIALLY_REFUNDED: string;
REFUNDED: string;
VOIDED: string;
};
ORDER_FULFILLMENT: {
PENDING: string;
FULFILLED: string;
SENT: string;
NONE: string;
PARTIAL: string;
CANCELLED: string;
};
ORDER_FULFILLMENT_KIND: {
IMMEDIATE: string;
MANUAL: string;
};
PAYMENT_KIND: {
IMMEDIATE: string;
MANUAL: string;
};
PAYMENT_PROCESSING_METHOD: {
CHECKOUT: string;
SUBSCRIPTION: string;
DIRECT: string;
MANUAL: string;
OFFSITE: string;
EXPRESS: string;
};
TRANSACTION_STATUS: {
PENDING: string;
FAILURE: string;
SUCCESS: string;
ERROR: string;
CANCELLED: string;
};
TRANSACTION_KIND: {
AUTHORIZE: string;
CAPTURE: string;
SALE: string;
VOID: string;
REFUND: string;
};
FULFILLMENT_STATUS: {
PENDING: string;
FULFILLED: string;
SENT: string;
NONE: string;
PARTIAL: string;
CANCELLED: string;
};
};
scopes: {
live: {
where: {
live_mode: boolean;
};
};
open: {
where: {
status: string;
};
};
closed: {
where: {
status: string;
};
};
cancelled: {
where: {
status: string;
};
};
};
indexes: {
fields: string[];
using: string;
operator: string;
}[];
hooks: {
beforeCreate: ((order: any, options: any) => void)[];
afterCreate: ((order: any, options: any) => any)[];
beforeUpdate: ((order: any, options: any) => void)[];
afterUpdate: ((order: any, options: any) => any)[];
};
};
};
static schema(app: any, Sequelize: any): {
token: {
type: any;
unique: boolean;
};
cart_token: {
type: any;
};
subscription_token: {
type: any;
};
customer_id: {
type: any;
allowNull: boolean;
};
shop_id: {
type: any;
};
user_id: {
type: any;
};
has_shipping: {
type: any;
defaultValue: boolean;
};
has_taxes: {
type: any;
defaultValue: boolean;
};
has_subscription: {
type: any;
defaultValue: boolean;
};
total_items: {
type: any;
defaultValue: number;
};
billing_address: {
type: any;
defaultValue: {};
};
shipping_address: {
type: any;
defaultValue: {};
};
buyer_accepts_marketing: {
type: any;
defaultValue: boolean;
};
cancel_reason: {
type: any;
values: string[];
};
cancelled_at: {
type: any;
};
client_details: {
type: any;
defaultValue: {
'host': any;
'accept_language': any;
'browser_height': any;
'browser_ip': string;
'browser_width': any;
'session_hash': any;
'user_agent': any;
'latitude': any;
'longitude': any;
};
};
status: {
type: any;
values: string[];
defaultValue: string;
};
closed_at: {
type: any;
};
currency: {
type: any;
defaultValue: any;
};
email: {
type: any;
validate: {
isEmail: boolean;
};
};
phone: {
type: any;
};
payment_kind: {
type: any;
values: string[];
defaultValue: any;
};
financial_status: {
type: any;
values: string[];
defaultValue: string;
};
transaction_kind: {
type: any;
values: string[];
defaultValue: any;
};
fulfillment_status: {
type: any;
values: string[];
defaultValue: string;
};
fulfillment_kind: {
type: any;
values: string[];
defaultValue: any;
};
landing_site: {
type: any;
};
location_id: {
type: any;
};
name: {
type: any;
};
number: {
type: any;
};
note: {
type: any;
};
note_attributes: {
type: any;
defaultValue: {};
};
payment_gateway_names: {
type: any;
defaultValue: any[];
};
processed_at: {
type: any;
};
processing_method: {
type: any;
values: string[];
};
referring_site: {
type: any;
};
shipping_lines: {
type: any;
defaultValue: any[];
};
discounted_lines: {
type: any;
defaultValue: any[];
};
coupon_lines: {
type: any;
defaultValue: any[];
};
pricing_overrides: {
type: any;
defaultValue: any[];
};
pricing_override_id: {
type: any;
};
total_overrides: {
type: any;
defaultValue: number;
};
source_name: {
type: any;
defaultValue: string;
};
subtotal_price: {
type: any;
defaultValue: number;
};
tax_lines: {
type: any;
defaultValue: any[];
};
refunded_lines: {
type: any;
defaultValue: any[];
};
taxes_included: {
type: any;
};
total_discounts: {
type: any;
defaultValue: number;
};
total_coupons: {
type: any;
defaultValue: number;
};
total_shipping: {
type: any;
defaultValue: number;
};
total_due: {
type: any;
defaultValue: number;
};
total_refunds: {
type: any;
defaultValue: number;
};
total_authorized: {
type: any;
defaultValue: number;
};
total_captured: {
type: any;
defaultValue: number;
};
total_voided: {
type: any;
defaultValue: number;
};
total_cancelled: {
type: any;
defaultValue: number;
};
total_pending: {
type: any;
defaultValue: number;
};
total_line_items_price: {
type: any;
defaultValue: number;
};
total_price: {
type: any;
defaultValue: number;
};
total_tax: {
type: any;
defaultValue: number;
};
total_weight: {
type: any;
defaultValue: number;
};
total_fulfilled_fulfillments: {
type: any;
defaultValue: number;
};
total_partial_fulfillments: {
type: any;
defaultValue: number;
};
total_sent_fulfillments: {
type: any;
defaultValue: number;
};
total_cancelled_fulfillments: {
type: any;
defaultValue: number;
};
total_pending_fulfillments: {
type: any;
defaultValue: number;
};
ip: {
type: any;
};
create_ip: {
type: any;
};
update_ip: {
type: any;
};
live_mode: {
type: any;
defaultValue: any;
};
};
static associate(models: any): void;
}
export interface Order {
toJSON(): any;
cancel(data: any): any;
close(): any;
logDiscountUsage(options: any): any;
notifyCustomer(preNotification: any, options: any): any;
addShipping(shipping: any, options: any): any;
removeShipping(shipping: any, options: any): any;
addTaxes(taxes: any, options: any): any;
removeTaxes(taxes: any, options: any): any;
saveShippingAddress(address: any, options: any): any;
saveBillingAddress(address: any, options: any): any;
groupFulfillments(options: any): any;
groupTransactions(paymentDetails: any, options: any): any;
groupSubscriptions(active: any, options: any): any;
fulfill(fulfillments: any, options: any): any;
resolveFinancialStatus(options: any): any;
resolveFulfillmentStatus(options: any): any;
setStatus(): any;
resolveStatus(options: any): any;
saveStatus(options: any): any;
saveFinancialStatus(options: any): any;
saveFulfillmentStatus(options: any): any;
setFinancialStatus(): any;
setFulfillmentStatus(): any;
sendToFulfillment(options: any): any;
resolveSubscribeImmediately(options: any): any;
resolveSendImmediately(options: any): any;
attemptImmediate(options: any): any;
saveItemsShippingLines(items: any, options: any): any;
saveItemsTaxLines(items: any, options: any): any;
buildOrderItem(item: any, qty: any, properties: any): any;
addItem(orderItem: any, options: any): any;
updateItem(orderItem: any, options: any): any;
removeItem(orderItem: any, options: any): any;
reconcileTransactions(options: any): any;
resolveCustomer(options: any): any;
resolveOrderItems(options: any): any;
resolveRefunds(options: any): any;
resolveTransactions(options: any): any;
resolveFulfillments(options: any): any;
calculateShipping(options: any): any;
calculateTaxes(options: any): any;
recalculate(options: any): any;
sendCreatedEmail(options: any): any;
sendCancelledEmail(options: any): any;
sendRefundedEmail(options: any): any;
sendPaidEmail(options: any): any;
sendPartiallyPaidEmail(options: any): any;
sendUpdatedEmail(options: any): any;
}