import { k as AttachFeatureOptions, l as EntityDataParams } from './clientEntTypes-B3DRcw3U.mjs';
import { C as CustomerData, B as BillingPortalParams } from './cusTypes-BD42O-7Z.mjs';

interface CancelParams {
    productId: string;
    entityId?: string;
    cancelImmediately?: boolean;
}

declare const attachAction: (args: Omit<{
    customerId: string;
    customerData?: CustomerData;
    productId: string;
    entityId?: string;
    successUrl?: string;
    options?: AttachFeatureOptions[];
    forceCheckout?: boolean;
    metadata?: Record<string, string>;
    entityData?: EntityDataParams;
    reward?: string;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;
declare const cancelAction: (args: Omit<CancelParams & {
    customerId: string;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;
declare const checkAction: (args: Omit<{
    customerId: string;
    customerData?: CustomerData;
    featureId?: string;
    productId?: string;
    entityId?: string;
    requiredBalance?: number;
    sendEvent?: boolean;
    withPreview?: "raw" | "formatted";
    entityData?: EntityDataParams;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;
declare const trackAction: (args: Omit<{
    customerId: string;
    customerData?: CustomerData;
    featureId?: string;
    entityId?: string;
    value?: number;
    eventName?: string;
    idempotencyKey?: string;
    entityData?: EntityDataParams;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;
declare const getBillingPortalAction: (args: Omit<{
    customerId: string;
    params?: BillingPortalParams;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;
declare const generateReferralCodeAction: (args: Omit<{
    customerId: string;
    programId: string;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;
declare const redeemReferralCodeAction: (args: Omit<{
    code: string;
    customerId: string;
}, "customerId"> & {
    encryptedCustomerId?: string;
}, request?: Request) => Promise<any>;

export { attachAction, cancelAction, checkAction, generateReferralCodeAction, getBillingPortalAction, redeemReferralCodeAction, trackAction };
