//
// Copyright (c) PlaceholderCompany. All rights reserved.
//
#nullable disable
#pragma warning disable CS1591
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Model.Entities;
namespace MediaBrowser.Controller.Persistence;
///
/// Provides methods for accessing MediaStreams.
///
public interface IMediaStreamRepository
{
///
/// Gets the media streams asynchronously.
///
/// The query.
/// The cancellation token.
/// IReadOnlyList{MediaStream}.
Task> GetMediaStreamsAsync(MediaStreamQuery filter, CancellationToken cancellationToken = default);
///
/// Saves the media streams asynchronously.
///
/// The identifier.
/// The streams.
/// The cancellation token.
/// A task representing the asynchronous operation.
Task SaveMediaStreamsAsync(Guid id, IReadOnlyList streams, CancellationToken cancellationToken = default);
}