import { Reunion } from "../types/agenda";
import { BestMatch, LastForVideo, MatchContext } from "./types";
import { CommandLineOptions } from "command-line-args";
export declare function processOneReunionMatch(args: {
    agenda: Reunion;
    best: BestMatch | null;
    baseDir: string;
    dataDir: string;
    session: number;
    options: Record<string, any>;
    writeIfChanged: (p: string, content: string) => Promise<void>;
    lastByVideo: Map<string, {
        agendaUid: string;
        agendaJsonPath: string;
        start: number;
    }>;
    getAgendaSegmentTimecodes: (dataNvs: string, finalNvs: string, agendaKey: string) => {
        start: number;
        end: number | null;
    } | null;
    buildSenatVodMasterM3u8FromNvs: (dataNvs: string) => string | null;
}): Promise<void>;
export declare function processBisIfNeeded(args: {
    agenda: Reunion;
    secondBest: BestMatch | null;
    ctx: MatchContext;
    skipDownload: boolean;
    options: CommandLineOptions;
    lastByVideo: Map<string, LastForVideo>;
    writeIfChanged: (p: string, content: string) => Promise<void>;
    processOneReunionMatch: (args: {
        agenda: Reunion;
        best: BestMatch | null;
        baseDir: string;
        dataDir: string;
        session: number;
        options: Record<string, any>;
        writeIfChanged: (p: string, content: string) => Promise<void>;
        lastByVideo: Map<string, LastForVideo>;
        getAgendaSegmentTimecodes: (dataNvs: string, finalNvs: string, agendaKey: string) => {
            start: number;
            end: number | null;
        } | null;
        buildSenatVodMasterM3u8FromNvs: (dataNvs: string) => string | null;
    }) => Promise<void>;
    getAgendaSegmentTimecodes: (dataNvs: string, finalNvs: string, agendaKey: string) => {
        start: number;
        end: number | null;
    } | null;
    buildSenatVodMasterM3u8FromNvs: (dataNvs: string) => string | null;
}): Promise<void>;
export declare function writeIfChanged(p: string, content: string): Promise<void>;
