/// <reference types="supertest" />
/// <reference types="fluent-ffmpeg" />
import { LiveVideo, LiveVideoCreate, LiveVideoSession, LiveVideoUpdate, ResultList, VideoCreateResult, VideoDetails, VideoPrivacy } from '../../models';
import { PeerTubeServer } from '../server';
import { AbstractCommand, OverrideCommandOptions } from '../shared';
export declare class LiveCommand extends AbstractCommand {
    get(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<LiveVideo>;
    listSessions(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<ResultList<LiveVideoSession>>;
    findLatestSession(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<LiveVideoSession>;
    getReplaySession(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<LiveVideoSession>;
    update(options: OverrideCommandOptions & {
        videoId: number | string;
        fields: LiveVideoUpdate;
    }): import("supertest").Test;
    create(options: OverrideCommandOptions & {
        fields: LiveVideoCreate;
    }): Promise<VideoCreateResult>;
    quickCreate(options: OverrideCommandOptions & {
        saveReplay: boolean;
        permanentLive: boolean;
        privacy?: VideoPrivacy;
    }): Promise<{
        video: VideoDetails;
        live: LiveVideo;
    }>;
    sendRTMPStreamInVideo(options: OverrideCommandOptions & {
        videoId: number | string;
        fixtureName?: string;
        copyCodecs?: boolean;
    }): Promise<import("fluent-ffmpeg").FfmpegCommand>;
    runAndTestStreamError(options: OverrideCommandOptions & {
        videoId: number | string;
        shouldHaveError: boolean;
    }): Promise<void>;
    waitUntilPublished(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<void>;
    waitUntilWaiting(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<void>;
    waitUntilEnded(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<void>;
    waitUntilSegmentGeneration(options: OverrideCommandOptions & {
        server: PeerTubeServer;
        videoUUID: string;
        playlistNumber: number;
        segment: number;
        objectStorage: boolean;
    }): Promise<void>;
    waitUntilReplacedByReplay(options: OverrideCommandOptions & {
        videoId: number | string;
    }): Promise<void>;
    getSegmentFile(options: OverrideCommandOptions & {
        videoUUID: string;
        playlistNumber: number;
        segment: number;
        objectStorage?: boolean;
    }): import("supertest").Test;
    getPlaylistFile(options: OverrideCommandOptions & {
        videoUUID: string;
        playlistName: string;
        objectStorage?: boolean;
    }): import("supertest").Test;
    countPlaylists(options: OverrideCommandOptions & {
        videoUUID: string;
    }): Promise<number>;
    private waitUntilState;
}
//# sourceMappingURL=live-command.d.ts.map