package scraper import ( "context" "git.leaktechnologies.dev/stu/Goondex/internal/model" ) // Scraper defines the interface that all scrapers must implement type Scraper interface { // Name returns the scraper's unique identifier Name() string // SearchPerformers searches for performers by query string SearchPerformers(ctx context.Context, query string) ([]model.Performer, error) // SearchStudios searches for studios by query string SearchStudios(ctx context.Context, query string) ([]model.Studio, error) // SearchScenes searches for scenes by query string SearchScenes(ctx context.Context, query string) ([]model.Scene, error) // GetSceneByID retrieves a scene by its remote ID GetSceneByID(ctx context.Context, remoteID string) (*model.Scene, error) // GetPerformerByID retrieves a performer by its remote ID GetPerformerByID(ctx context.Context, remoteID string) (*model.Performer, error) // GetStudioByID retrieves a studio by its remote ID GetStudioByID(ctx context.Context, remoteID string) (*model.Studio, error) }