#pragma once

#include <balancer/kernel/helpers/errors.h>
#include <balancer/kernel/net/addr.h>


class TContExecutor;

namespace NSrvKernel::NDns {

struct TResolveInfo;

class IAsyncCache {
public:
    virtual ~IAsyncCache() = default;

    virtual TErrorOr<TSockAddrInfo> LookupOrResolve(const TResolveInfo& info, bool onlyCache, TInstant deadline) = 0;
};

}