import { Coupon } from './interfaces';
export declare class SallaCartCoupons {
    host: HTMLElement;
    availableCoupons: Coupon[];
    cartTotal: number;
    currentCoupon: string;
    couponInputValue: string;
    couponError: string;
    isApplying: boolean;
    private couponInputRef;
    private couponButtonRef;
    private isHandlingInternalError;
    private cartUpdatedHandler;
    private couponAddedHandler;
    private couponAdditionFailedHandler;
    private couponDeletedHandler;
    private onKeyUp;
    private onInput;
    componentWillLoad(): Promise<void>;
    componentDidLoad(): void;
    private setupCartEventListeners;
    disconnectedCallback(): void;
    /**
     * Business Decision: No visual selected state needed
     * UX Flow: Click coupon → populate input → auto-apply (streamlined experience)
     */
    selectCoupon(couponCode: string): Promise<Coupon>;
    private loadCouponsData;
    private loadCartTotal;
    private setupCouponInputEvents;
    private handleCouponButtonClick;
    private showCouponError;
    private handleCouponClick;
    private applyCoupon;
    private formatMainAmount;
    private isEligible;
    private renderCouponCard;
    render(): any;
}
