package engines

import (
	"context"

	"github.com/ashie/gosearch/internal/contracts"
)

// Engine is a Go-native implementation of a SearXNG engine.
//
// Implementations should return a SearchResponse containing only the results
// for that engine subset; the caller will merge multiple engine responses.
type Engine interface {
	Name() string
	Search(ctx context.Context, req contracts.SearchRequest) (contracts.SearchResponse, error)
}

