package hostimport "context"// ArtworkService provides artwork public URL generation capabilities for plugins.//// This service allows plugins to generate public URLs for artwork images of// various entity types (artists, albums, tracks, playlists). The generated URLs// include authentication tokens and can be used to display artwork in external// services or custom UIs.////nd:hostservice name=Artwork permission=artworktype ArtworkService interface {// GetArtistUrl generates a public URL for an artist's artwork.//// Parameters:// - id: The artist's unique identifier// - size: Desired image size in pixels (0 for original size)//// Returns the public URL for the artwork, or an error if generation fails.//nd:hostfuncGetArtistUrl(ctx context.Context, id string, size int32) (url string, err error)// GetAlbumUrl generates a public URL for an album's artwork.//// Parameters:// - id: The album's unique identifier// - size: Desired image size in pixels (0 for original size)//// Returns the public URL for the artwork, or an error if generation fails.//nd:hostfuncGetAlbumUrl(ctx context.Context, id string, size int32) (url string, err error)// GetTrackUrl generates a public URL for a track's artwork.//// Parameters:// - id: The track's (media file) unique identifier// - size: Desired image size in pixels (0 for original size)//// Returns the public URL for the artwork, or an error if generation fails.//nd:hostfuncGetTrackUrl(ctx context.Context, id string, size int32) (url string, err error)// GetPlaylistUrl generates a public URL for a playlist's artwork.//// Parameters:// - id: The playlist's unique identifier// - size: Desired image size in pixels (0 for original size)//// Returns the public URL for the artwork, or an error if generation fails.//nd:hostfuncGetPlaylistUrl(ctx context.Context, id string, size int32) (url string, err error)}