import * as shop from './shop.js'; import * as checkout from './checkout.js'; import * as validation from './validation.js'; declare const FavCRM: { normalizeSearchQuery(query: string): string; matchesSearchQuery(product: Pick, query: string): boolean; filterProducts>(products: T[], query: string): T[]; filterProductsByCategory>(products: T[], categorySlug: string): T[]; highlightSearchMatch(text: string, query: string): shop.SearchMatchSegment[]; getEffectivePrice(product: Pick): number; hasDiscount(product: Pick): boolean; isInStock(stockStatus: string): boolean; getMaxPurchasableQuantity(item: shop.PurchasableStock): number | null; clampPurchasableQuantity(item: shop.PurchasableStock, quantity: number): number; getProductLink(product: Pick): string; getCategoryLabel(product: Pick): string; getPrimaryImage(product: Pick): import("./index.js").ProductImage | null; toCartProduct(product: import("./index.js").Product, variation?: import("./index.js").ProductVariation | undefined): import("./index.js").ProductListItem; findVariation(variations: import("./index.js").ProductVariation[], selections: Record): import("./index.js").ProductVariation | undefined; getVariationLabel(variation: import("./index.js").ProductVariation): string; isSubscriptionProduct(product: Pick): boolean; formatSubscriptionPrice(price: number, billingCycle: string, currency?: string): string; getMonthlyEquivalent(plan: { price: number; billingCycle: string; }): number; getRelatedProducts>(current: Pick, products: T[], limit?: number): T[]; validateEmail(email: string): boolean; validatePhone(phone: string): boolean; validateOtp(otp: string): boolean; validateRequired(fields: Record, required: string[]): string | null; validateRegistrationForm(data: Partial): validation.ValidationError[]; validateEventRegistrationForm(data: Partial): validation.ValidationError[]; validateContactForm(data: Partial<{ name: string; email: string; phone?: string | undefined; message: string; }>): validation.ValidationError[]; calculateFinalTotal(cartTotal: number, discountAmount: number, shippingCost: number, creditsApplied?: number): number; validateCheckoutForm(fields: Pick): string | null; computeShippingEligibility(methods: import("./index.js").ShippingMethod[], cartTotal: number): checkout.ShippingEligibility[]; pickDefaultShippingId(eligibility: checkout.ShippingEligibility[]): number | null; buildCreateOrderRequest(cart: import("./index.js").CartItem[], form: checkout.CheckoutFormFields, shippingMethodId: number | null, promotionCode?: string | undefined, payment?: checkout.PaymentOptions | undefined): import("./index.js").CreateOrderRequest; buildAppliedCoupon(code: string, result: import("./index.js").PromotionValidationResponse): import("./index.js").AppliedCoupon; getCouponErrorMessage(result: import("./index.js").PromotionValidationResponse, errorCodeMap: Record string>, fallback: string): string; }; export default FavCRM; //# sourceMappingURL=browser.d.ts.map