// Package reservation is the handler for responding to DHCPv4 messages with only host reservations.
package reservation

import (
	"dhcp/internal/dhcpServer/handler"
	"github.com/go-logr/logr"
	"net/netip"
)

// Handler holds the configuration details for the running the dhcpServer server.
type Handler struct {
	// Backend is the macAndIPXE to use for getting dhcpServer data.
	Backend handler.BackendReader

	// IPAddr is the IP address to use in dhcpServer responses.
	// Option 54 and the sname dhcpServer header.
	// This could be a load balancer IP address or an ingress IP address or a local IP address.
	IPAddr netip.Addr

	// Log is used to log messages.
	// `logr.Discard()` can be used if no logging is desired.
	Log logr.Logger
}
