package content

// ContentItem represents a piece of content from the database
type ContentItem struct {
	ID        string `json:"id"`
	SiteID    string `json:"site_id"`
	Value     string `json:"value"`
	Type      string `json:"type"`
	UpdatedAt string `json:"updated_at"`
}

// ContentResponse represents the API response structure
type ContentResponse struct {
	Content []ContentItem `json:"content"`
	Error   string        `json:"error,omitempty"`
}

// ContentClient interface for content retrieval
type ContentClient interface {
	// GetContent fetches content by ID
	GetContent(siteID, contentID string) (*ContentItem, error)

	// GetBulkContent fetches multiple content items by IDs
	GetBulkContent(siteID string, contentIDs []string) (map[string]ContentItem, error)

	// GetAllContent fetches all content for a site
	GetAllContent(siteID string) (map[string]ContentItem, error)
}
