@aigamo/hydrangean-diva
Version:
An open-source online media player that can be deployed to and hosted on GitHub pages.
62 lines (61 loc) • 2.81 kB
TypeScript
import { IPlayQueueItemStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueItemStore';
import { IPlayQueueStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueStore';
import { PlayQueueDto } from '../../media-player.play-queue.abstractions/interfaces/PlayQueueDto';
import { PlayQueueItemDto } from '../../media-player.play-queue.abstractions/interfaces/PlayQueueItemDto';
import { IStateStore } from '@aigamo/route-sphere';
declare class PlayQueueLocalStorageStateStore implements IStateStore<PlayQueueDto> {
private readonly playQueue;
constructor(playQueue: PlayQueueStore);
get state(): PlayQueueDto;
set state(value: PlayQueueDto);
validateState(state: unknown): state is PlayQueueDto;
}
export declare class PlayQueueStore implements IPlayQueueStore {
interacted: boolean;
readonly localStorageState: PlayQueueLocalStorageStateStore;
items: IPlayQueueItemStore[];
currentId: number | undefined;
constructor();
createItemFromDto(dto: PlayQueueItemDto): IPlayQueueItemStore;
get isEmpty(): boolean;
get canClear(): boolean;
get currentItem(): IPlayQueueItemStore | undefined;
get canPlay(): boolean;
get canPause(): boolean;
get hasMultipleItems(): boolean;
get currentIndex(): number | undefined;
set currentIndex(value: number | undefined);
get hasPreviousItem(): boolean;
get hasNextItem(): boolean;
get isLastItem(): boolean;
get selectedItems(): IPlayQueueItemStore[];
get allItemsSelected(): boolean;
get hasSelectedItems(): boolean;
get selectedItemsOrAllItems(): IPlayQueueItemStore[];
get canAddSelectedItems(): boolean;
get canPlaySelectedItemsNext(): boolean;
get canRemoveSelectedItems(): boolean;
setItems(value: IPlayQueueItemStore[]): void;
interact(): void;
clear(): void;
unselectAll(): void;
selectAll(): void;
setCurrentItem(item: IPlayQueueItemStore | undefined): void;
setNextItems(items: IPlayQueueItemStore[]): void;
clearAndSetItems(items: IPlayQueueItemStore[]): void;
playNext(items: IPlayQueueItemStore[]): Promise<void>;
playSelectedItemsNext(): Promise<void>;
addItems(items: IPlayQueueItemStore[]): Promise<void>;
addSelectedItems(): Promise<void>;
playFirst(items: IPlayQueueItemStore[]): Promise<void>;
moveItem(item: IPlayQueueItemStore, index: number): void;
goToFirst(): Promise<void>;
removeItems(items: IPlayQueueItemStore[]): Promise<void>;
removeSelectedItems(): Promise<void>;
removeOtherItems(item: IPlayQueueItemStore): Promise<void>;
removeItemsAbove(item: IPlayQueueItemStore): Promise<void>;
previous(): Promise<void>;
next(): Promise<void>;
addItemFromDto(dto: PlayQueueItemDto): Promise<void>;
}
export {};