import { CheckoutFormErrorLabelsType, CheckoutFormErrorsResultType } from '../..';
import { AddressDTO, OrderDTO } from '@sentecacommerce/sdk';
import { QueryResult } from 'react-query';
import { SavedBillingAddress } from '../useSavedBillingList';
export declare const useBilling: ({ orderQuery, errorLabels, withSavedBillingAddressList, enableSaveBillingAddress, withPersistBeforePageLeave, countryCode, validateBillingAddress, enabled, }: UseBillingProps) => UseBillingResultType;
declare type UseBillingProps = {
    orderQuery: QueryResult<OrderDTO, unknown>;
    errorLabels: CheckoutFormErrorLabelsType;
    withSavedBillingAddressList: boolean;
    enableSaveBillingAddress: boolean;
    withPersistBeforePageLeave: boolean;
    countryCode: string;
    enabled: boolean;
    validateBillingAddress: (address: AddressDTO, errors: CheckoutFormErrorLabelsType) => CheckoutFormErrorsResultType;
};
export declare type UseBillingResultType = {
    isSubmitting: boolean;
    errors?: CheckoutFormErrorsResultType;
    isValid: boolean;
    data?: AddressDTO;
    updateIsSubmitting: (value: boolean) => void;
    onInputChange?: (name: string, value: any) => void;
    persistBillingAddress: () => void;
    saveBillingAddress: () => void;
    billingAddressList?: SavedBillingAddress[];
    canSaveBillingAddress: boolean;
    isWithBillingAddress: null | boolean;
    updateIsWithBillingAddress: (data: boolean) => void;
    isAddingNew: boolean;
    updateIsAddingNew: (value: boolean) => void;
};
export {};
