import { UseShippingProvider, Context, FactoryParams, CustomQuery, PlatformApi } from '../types';
import { Ref } from 'vue';
export interface UseShippingProviderParams<STATE, SHIPPING_METHOD, API extends PlatformApi = any> extends FactoryParams<API> {
    load: (context: Context, params: {
        state: Ref<STATE>;
        customQuery?: CustomQuery;
    }) => Promise<STATE>;
    save: (context: Context, params: {
        state: Ref<STATE>;
        shippingMethod: SHIPPING_METHOD;
        customQuery?: CustomQuery;
    }) => Promise<STATE>;
}
export declare const useShippingProviderFactory: <STATE, SHIPPING_METHOD, API extends PlatformApi = any>(factoryParams: UseShippingProviderParams<STATE, SHIPPING_METHOD, API>) => () => UseShippingProvider<STATE, SHIPPING_METHOD, API>;
