UNPKG

@aigamo/hydrangean-diva

Version:

An open-source online media player that can be deployed to and hosted on GitHub pages.

27 lines (26 loc) 1.22 kB
import { PlayQueueItemDto } from '../../media-player.play-queue.abstractions/interfaces/PlayQueueItemDto'; import { IPlaylistItemStore } from './IPlaylistItemStore'; export interface IPlaylistStore { readonly items: IPlaylistItemStore[]; createItemFromDto(dto: PlayQueueItemDto): IPlaylistItemStore; readonly isEmpty: boolean; readonly hasMultipleItems: boolean; readonly selectedItems: IPlaylistItemStore[]; readonly allItemsSelected: boolean; readonly canAddSelectedItems: boolean; readonly canPlaySelectedItemsNext: boolean; readonly canRemoveSelectedItems: boolean; setItems(value: IPlaylistItemStore[]): void; unselectAll(): void; selectAll(): void; playSelectedItemsNext(): Promise<void>; addItems(items: IPlaylistItemStore[]): Promise<void>; addSelectedItems(): Promise<void>; moveItem(item: IPlaylistItemStore, index: number): void; removeItems(items: IPlaylistItemStore[]): Promise<void>; removeSelectedItems(): Promise<void>; removeItemsAbove(item: IPlaylistItemStore): Promise<void>; removeOtherItems(item: IPlaylistItemStore): Promise<void>; addItemFromDto(dto: PlayQueueItemDto): Promise<void>; playAll(): Promise<void>; }