import { AddressDTO, AddressDraftDTO } from '@sentecacommerce/sdk';
import { QueryResult, MutationResultPair } from 'react-query';
declare type AddressesApiType = {
    readonly useGet: (config?: {
        enabled?: boolean;
    }) => QueryResult<AddressDTO[], unknown>;
    readonly useGetById: (id?: string) => QueryResult<AddressDTO, unknown>;
    readonly useAdd: ({ onSuccess, }: {
        onSuccess?: () => void;
    }) => MutationResultPair<AddressDTO, unknown, AddressDraftDTO, unknown>;
    readonly useUpdate: (onSuccess?: () => void) => MutationResultPair<AddressDTO, unknown, {
        id: string;
        dto: AddressDraftDTO;
    }, unknown>;
    readonly useRemove: (onSuccess?: () => void) => MutationResultPair<AddressDTO, unknown, {
        id: string;
    }, unknown>;
    readonly cacheKeys: {
        useGet: string;
    };
};
export declare const AddressesApiFactory: {
    getInstance: () => AddressesApiType;
};
export declare const addressesApi: AddressesApiType;
export {};
