///
import { IBaseObj, IEpisode } from "chakram-ts";
import { ChromecastDevice } from "stratocaster";
import { IPlayableOptions, IPlayerChannel, IQueryResult } from "../app";
import { CookiesConfigurable } from "../cli/configurables";
import { BabblerBaseApp, IPlayableInfo, IQueueItem } from "./babbler/base";
export interface IBabblerPrimeOpts {
appId: string;
cookies: string;
}
declare class BabblerPrimeChannel implements IPlayerChannel {
private readonly options;
constructor(options: IBabblerPrimeOpts);
ownsUrl(url: string): boolean;
createPlayable(url: string): Promise<(app: BabblerPrimeApp, opts: IPlayableOptions) => Promise>;
queryByTitle(title: string): AsyncIterable;
private playableFromObj;
}
/**
* Amazon Prime Video
*/
export declare class BabblerPrimeApp extends BabblerBaseApp {
static configurable: CookiesConfigurable;
static createPlayerChannel(options: IBabblerPrimeOpts): BabblerPrimeChannel;
private api;
constructor(device: ChromecastDevice, opts: IBabblerPrimeOpts);
/**
* Attempt to resume playback of the series with the
* given ID
*/
resumeSeries(id: string): Promise;
/**
* Options:
* - id: ID of a title to play
* - startTime: Time in seconds to start playback. If unspecified,
* we attempt to resume where you left off
*/
playTitle(id: string, opts?: {
startTime?: number;
}): Promise;
protected performLicenseRequest(buffer: Buffer, url: string | undefined): Promise;
protected loadInfoFor(contentId: string): Promise;
protected loadQueueAfter(contentId: string, media?: IBaseObj): Promise>>;
protected loadQueueBefore(contentId: string, media?: IBaseObj): Promise>>;
protected loadQueueRelative(mode: string, contentId: string, media: IBaseObj | undefined, sliceEpisodes: (episodes: IEpisode[], currentIndex: number) => IEpisode[]): Promise>>;
protected onPlayerPaused(currentTimeSeconds: number, media?: IBaseObj): Promise;
}
export {};