import { R as Result, a as CheckResult, A as AutumnPromise, T as TrackResult, C as CancelResult, S as SetupPaymentResult } from '../response-dnzFyX91.mjs';
import { A as AutumnError } from '../error-DHbclCVh.mjs';
import { C as CheckoutResult } from '../attachTypes-DoFoPh8g.mjs';
import { B as BillingPortalResult } from '../cusTypes-COIU0NG3.mjs';
import { AutumnContextParams } from '../AutumnContext.mjs';
import { CheckParams, TrackParams, CancelParams, OpenBillingPortalParams, SetupPaymentParams } from '../client/types/clientGenTypes.mjs';
import { AttachParams, CheckoutParams } from '../client/types/clientAttachTypes.mjs';
import 'zod';
import 'react';
import '../ReactAutumnClient-BjRiaYDN.mjs';
import '../client/types/clientEntTypes.mjs';
import '../entTypes-BVPtpycG.mjs';

declare const useAutumnBase: ({ AutumnContext, refetchCustomer, }: {
    AutumnContext: React.Context<AutumnContextParams>;
    refetchCustomer?: () => Promise<any>;
}) => {
    attach: (params: AttachParams) => Promise<Result<{
        code: string;
        message: string;
        customer_id: string;
        product_ids: string[];
        customer_data?: any;
        checkout_url?: string | undefined;
    } | CheckResult, AutumnError>>;
    check: (params: CheckParams) => AutumnPromise<CheckResult>;
    track: (params: TrackParams) => AutumnPromise<TrackResult>;
    cancel: (params: CancelParams) => AutumnPromise<CancelResult>;
    openBillingPortal: (params?: OpenBillingPortalParams) => AutumnPromise<BillingPortalResult>;
    setupPayment: (params?: SetupPaymentParams) => AutumnPromise<SetupPaymentResult>;
    checkout: (params: CheckoutParams) => Promise<{
        data: null;
        error: AutumnError;
    } | {
        data: CheckoutResult;
        error: null;
    }>;
};

export { useAutumnBase };
