<?php

declare(strict_types=1);

namespace App\Framework\OAuth\Providers;

use App\Framework\OAuth\ValueObjects\OAuthToken;

/**
 * Supports PreSaves Interface
 *
 * Marker interface for OAuth providers that support pre-save campaign functionality
 * (adding tracks to user's library before official release)
 */
interface SupportsPreSaves
{
    /**
     * Add tracks to user's library
     *
     * @param array<string> $trackIds Platform-specific track IDs
     */
    public function addTracksToLibrary(OAuthToken $token, array $trackIds): bool;
}
