/**
 * Browser-friendly packages only.
 * (No Node.js built-ins like fs, path, dotenv, etc.)
 * Works in both Node.js and modern browsers.
 */
import { MulmoCanvasDimension, MulmoBeat, Text2SpeechProvider, Text2ImageAgentInfo, Text2HtmlAgentInfo, BeatMediaType, MulmoPresentationStyle, SpeakerData, Text2ImageProvider, MulmoStudioContext, MulmoTransition } from "../types/index.js";
export declare const MulmoPresentationStyleMethods: {
    getCanvasSize(presentationStyle: MulmoPresentationStyle): MulmoCanvasDimension;
    getAllSpeechProviders(presentationStyle: MulmoPresentationStyle): Set<Text2SpeechProvider>;
    getTextSlideStyle(presentationStyle: MulmoPresentationStyle, beat: MulmoBeat): string;
    getDefaultSpeaker(presentationStyle: MulmoPresentationStyle): string;
    getSpeaker(context: MulmoStudioContext, beat: MulmoBeat, targetLang: string | undefined): SpeakerData;
    getMovieTransition(context: MulmoStudioContext, beat: MulmoBeat): MulmoTransition | null;
    getText2ImageProvider(provider: Text2ImageProvider | undefined): Text2ImageProvider;
    getImageAgentInfo(presentationStyle: MulmoPresentationStyle, beat?: MulmoBeat): Text2ImageAgentInfo;
    getMovieAgentInfo(presentationStyle: MulmoPresentationStyle, beat?: MulmoBeat): {
        agent: string;
        movieParams: {
            provider?: string | undefined;
            model?: string | undefined;
            fillOption?: {
                style: "aspectFit" | "aspectFill";
            } | undefined;
            transition?: {
                type: "fade" | "slideout_left" | "slideout_right" | "slideout_up" | "slideout_down" | "slidein_left" | "slidein_right" | "slidein_up" | "slidein_down" | "wipeleft" | "wiperight" | "wipeup" | "wipedown" | "wipetl" | "wipetr" | "wipebl" | "wipebr";
                duration: number;
            } | undefined;
            filters?: ({
                type: "mono";
            } | {
                type: "sepia";
            } | {
                type: "brightness_contrast";
                brightness: number;
                contrast: number;
            } | {
                type: "hue";
                hue: number;
                saturation: number;
                brightness: number;
            } | {
                type: "colorbalance";
                rs: number;
                gs: number;
                bs: number;
                rm: number;
                gm: number;
                bm: number;
                rh: number;
                gh: number;
                bh: number;
            } | {
                type: "vibrance";
                intensity: number;
            } | {
                type: "negate";
                negate_alpha: boolean;
            } | {
                type: "colorhold";
                color: string;
                similarity: number;
                blend: number;
            } | {
                type: "colorkey";
                color: string;
                similarity: number;
                blend: number;
            } | {
                type: "blur";
                radius: number;
                power: number;
            } | {
                type: "gblur";
                sigma: number;
            } | {
                type: "avgblur";
                sizeX: number;
                sizeY: number;
            } | {
                type: "unsharp";
                luma_msize_x: number;
                luma_msize_y: number;
                luma_amount: number;
                chroma_msize_x: number;
                chroma_msize_y: number;
                chroma_amount: number;
            } | {
                type: "edgedetect";
                low: number;
                high: number;
                mode: "wires" | "colormix" | "canny";
            } | {
                type: "sobel";
                planes: number;
                scale: number;
                delta: number;
            } | {
                type: "emboss";
            } | {
                type: "glitch";
                intensity: number;
                style: "blend" | "noise";
            } | {
                type: "grain";
                intensity: number;
            } | {
                type: "hflip";
            } | {
                type: "vflip";
            } | {
                type: "rotate";
                angle: number;
                fillcolor: string;
            } | {
                type: "transpose";
                dir: "cclock" | "clock" | "cclock_flip" | "clock_flip";
            } | {
                type: "vignette";
                angle: number;
                mode: "forward" | "backward";
                x0?: number | undefined;
                y0?: number | undefined;
            } | {
                type: "fade";
                mode: "in" | "out";
                start_frame: number;
                nb_frames: number;
                alpha: boolean;
                color: string;
            } | {
                type: "pixelize";
                width: number;
                height: number;
                mode: "avg" | "min" | "max";
            } | {
                type: "pseudocolor";
                preset: "magma" | "inferno" | "plasma" | "viridis" | "turbo" | "cividis" | "range1" | "range2" | "shadows" | "highlights" | "solar" | "nominal" | "preferred" | "total";
            } | {
                type: "tmix";
                frames: number;
                weights?: string | undefined;
            } | {
                type: "lagfun";
                decay: number;
                planes: number;
            } | {
                type: "threshold";
                planes: number;
            } | {
                type: "elbg";
                codebook_length: number;
            } | {
                type: "lensdistortion";
                k1: number;
                k2: number;
            } | {
                type: "chromashift";
                cbh: number;
                cbv: number;
                crh: number;
                crv: number;
                edge: "smear" | "wrap";
            } | {
                type: "deflicker";
                size: number;
                mode: "gm" | "am" | "hm" | "qm" | "cm" | "pm" | "median";
            } | {
                type: "dctdnoiz";
                sigma: number;
            } | {
                type: "custom";
                filter: string;
            })[] | undefined;
            vertexai_project?: string | undefined;
            vertexai_location?: string | undefined;
            firstFrameImageName?: string | undefined;
            lastFrameImageName?: string | undefined;
            referenceImages?: {
                imageName: string;
                referenceType: "ASSET" | "STYLE";
            }[] | undefined;
            concurrency?: number | undefined;
            generateAudio?: boolean | undefined;
            speed?: number | undefined;
        };
        keyName: string;
    };
    getSoundEffectAgentInfo(presentationStyle: MulmoPresentationStyle, beat: MulmoBeat): {
        agentName: string;
        defaultModel: import("../types/provider2agent.js").ReplicateModel;
        keyName: string;
        models: import("../types/provider2agent.js").ReplicateModel[];
        modelParams: Record<import("../types/provider2agent.js").ReplicateModel, {
            identifier?: `${string}/${string}:${string}`;
        }>;
    };
    getLipSyncAgentInfo(presentationStyle: MulmoPresentationStyle, beat: MulmoBeat): {
        agentName: string;
        defaultModel: import("../types/provider2agent.js").ReplicateModel;
        keyName: string;
        models: import("../types/provider2agent.js").ReplicateModel[];
        modelParams: Record<import("../types/provider2agent.js").ReplicateModel, {
            identifier?: `${string}/${string}:${string}` | `${string}/${string}`;
            video?: string;
            audio: string;
            image?: string;
        }>;
    };
    /** Concurrency for image/movie generation graph (uses min of imageParams/movieParams) */
    getImageConcurrency(presentationStyle: MulmoPresentationStyle): number;
    /** Concurrency for audio/TTS generation graph */
    getAudioConcurrency(presentationStyle: MulmoPresentationStyle): number;
    getHtmlImageAgentInfo(presentationStyle: MulmoPresentationStyle): Text2HtmlAgentInfo;
    getImageType(_: MulmoPresentationStyle, beat: MulmoBeat): BeatMediaType;
};
