import { FindQuery } from '../../..';
import { MutateFunction, QueryResult } from 'react-query';
import { EcontCityDTO, EcontCountryDTO, EcontLocationCityDTO, EcontLocationCountryDTO, EcontLocationOfficeDTO, EcontLocationQuarterDTO, EcontLocationStreetDTO, EcontOfficeDTO, EcontQuarterDTO, EcontStreetDTO, EvropatCityDTO, EvropatLocationCityDTO, EvropatLocationOfficeDTO, EvropatOfficeDTO, OrderDTO, SpeedyCityDTO, SpeedyCountryDTO, SpeedyLocationCityDTO, SpeedyLocationCountryDTO, SpeedyLocationOfficeDTO, SpeedyLocationQuarterDTO, SpeedyLocationStreetDTO, SpeedyOfficeDTO, SpeedyQuarterDTO, SpeedyStreetDTO } from '@sentecacommerce/sdk';
declare type UseGenericGenericAddressProps = {
    callback?: () => void;
    deleteCallback?: () => void;
    key: string;
};
export declare function useGenericCourierAddress<T>({ callback, deleteCallback, key, }: UseGenericGenericAddressProps): T;
export declare type UseCheckoutEvropatAddressResults = {
    country: undefined;
    city: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EvropatCityDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EvropatLocationCityDTO[], unknown>;
        selected?: EvropatCityDTO;
    };
    quarter: undefined;
    street: undefined;
    office: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EvropatOfficeDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EvropatLocationOfficeDTO[], unknown>;
        selected?: EvropatOfficeDTO;
    };
};
export declare type UseCheckoutEcontAddressResults = {
    country: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EcontCountryDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EcontLocationCountryDTO[], unknown>;
        selected?: EcontCountryDTO;
    };
    city: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EcontCityDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EcontLocationCityDTO[], unknown>;
        selected?: EcontCityDTO;
    };
    quarter: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EcontQuarterDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EcontLocationQuarterDTO[], unknown>;
        selected?: EcontQuarterDTO;
    };
    street: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EcontStreetDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EcontLocationStreetDTO[], unknown>;
        selected?: EcontStreetDTO;
    };
    office: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, EcontOfficeDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<EcontLocationOfficeDTO[], unknown>;
        selected?: EcontOfficeDTO;
    };
};
export declare type UseCheckoutSpeedyAddressResults = {
    country: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, SpeedyCountryDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<SpeedyLocationCountryDTO[], unknown>;
        selected?: SpeedyCountryDTO;
    };
    city: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, SpeedyCityDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<SpeedyLocationCityDTO[], unknown>;
        selected?: SpeedyCityDTO;
    };
    quarter: {
        get: (query: FindQuery) => void;
        set: MutateFunction<OrderDTO, unknown, SpeedyQuarterDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<SpeedyLocationQuarterDTO[], unknown>;
        selected?: SpeedyQuarterDTO;
    };
    street: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, SpeedyStreetDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<SpeedyLocationStreetDTO[], unknown>;
        selected?: SpeedyStreetDTO;
    };
    office: {
        get: (query: FindQuery) => Promise<void>;
        set: MutateFunction<OrderDTO, unknown, SpeedyOfficeDTO, unknown>;
        delete: MutateFunction<OrderDTO, unknown, any, unknown>;
        currentResults: QueryResult<SpeedyLocationOfficeDTO[], unknown>;
        selected?: SpeedyOfficeDTO;
    };
};
export {};
