import minimist from 'minimist';
import { supportsHyperlink } from './hyperlinks/is-supported';
export declare const cli: () => Promise<void>;
export declare const CliInternals: {
    createOverwriteableCliOutput: (options: {
        quiet: boolean;
        cancelSignal: import("@remotion/renderer").CancelSignal | null;
        updatesDontOverwrite: boolean;
        indent: boolean;
    }) => import("./progress-bar").OverwriteableCliOutput;
    chalk: {
        enabled: () => boolean;
        visible: boolean;
        styles: Record<string, {
            codes: [number, number];
            name: string;
            wrap?: (input: string, newline: boolean) => string;
        }>;
        keys: Record<string, string[]>;
        alias?: (name: string, col: string) => void;
    } & {
        reset: (str: string) => string;
        bold: (str: string) => string;
        dim: (str: string) => string;
        italic: (str: string) => string;
        underline: (str: string) => string;
        inverse: (str: string) => string;
        hidden: (str: string) => string;
        strikethrough: (str: string) => string;
        black: (str: string) => string;
        red: (str: string) => string;
        green: (str: string) => string;
        yellow: (str: string) => string;
        blue: (str: string) => string;
        magenta: (str: string) => string;
        cyan: (str: string) => string;
        white: (str: string) => string;
        gray: (str: string) => string;
        bgBlack: (str: string) => string;
        bgRed: (str: string) => string;
        bgGreen: (str: string) => string;
        bgYellow: (str: string) => string;
        bgBlue: (str: string) => string;
        bgMagenta: (str: string) => string;
        bgWhite: (str: string) => string;
        blackBright: (str: string) => string;
        redBright: (str: string) => string;
        greenBright: (str: string) => string;
        yellowBright: (str: string) => string;
        blueBright: (str: string) => string;
        magentaBright: (str: string) => string;
        whiteBright: (str: string) => string;
        bgBlackBright: (str: string) => string;
        bgRedBright: (str: string) => string;
        bgGreenBright: (str: string) => string;
        bgYellowBright: (str: string) => string;
        bgBlueBright: (str: string) => string;
        bgMagentaBright: (str: string) => string;
        bgWhiteBright: (str: string) => string;
    };
    makeProgressBar: (percentage: number, noColor: boolean) => string;
    Log: {
        trace: (options: import("@remotion/renderer").LogOptions & {
            tag?: string;
        }, message?: any, ...optionalParams: any[]) => boolean | void;
        verbose: (options: import("@remotion/renderer").LogOptions & {
            tag?: string;
        }, message?: any, ...optionalParams: any[]) => boolean | void;
        info: (options: import("@remotion/renderer").LogOptions, message?: any, ...optionalParams: any[]) => boolean | void;
        warn: (options: import("@remotion/renderer").LogOptions, message?: any, ...optionalParams: any[]) => boolean | void;
        error: (options: import("@remotion/renderer").LogOptions & {
            tag?: string;
        }, message?: any, ...optionalParams: any[]) => boolean | void;
    };
    getCliOptions: (options: {
        isStill: boolean;
        logLevel: import("@remotion/renderer").LogLevel;
        indent: boolean;
    }) => {
        concurrency: string | number | null;
        frameRange: import("@remotion/renderer").FrameRange | null;
        shouldOutputImageSequence: boolean;
        inputProps: Record<string, unknown>;
        envVariables: Record<string, string>;
        pixelFormat: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
        proResProfile: "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy" | undefined;
        everyNthFrame: number;
        stillFrame: number;
        browserExecutable: import("@remotion/renderer").BrowserExecutable;
        userAgent: string | null;
        disableWebSecurity: boolean;
        ignoreCertificateErrors: boolean;
        ffmpegOverride: import("@remotion/renderer").FfmpegOverrideFn;
        height: number | null;
        width: number | null;
        configFileImageFormat: "png" | "jpeg" | "none" | undefined;
    };
    loadConfig: (remotionRoot: string) => Promise<string | null>;
    formatBytes: (number: number, options?: Intl.NumberFormatOptions & {
        locale: string;
        bits?: boolean;
        binary?: boolean;
        signed: boolean;
    }) => string;
    initializeCli: (remotionRoot: string) => Promise<import("@remotion/renderer").LogLevel>;
    BooleanFlags: string[];
    quietFlagProvided: () => boolean;
    parsedCli: import("./parse-command-line").CommandLineOptions & {
        _: string[];
    };
    printError: (err: Error, logLevel: import("@remotion/renderer").LogLevel) => Promise<void>;
    getFileSizeDownloadBar: (downloaded: number) => string;
    determineFinalStillImageFormat: ({ downloadName, outName, configImageFormat, cliFlag, isLambda, fromUi, }: {
        downloadName: string | null;
        outName: string | null;
        configImageFormat: import("@remotion/renderer").StillImageFormat | null;
        cliFlag: import("@remotion/renderer").StillImageFormat | import("@remotion/renderer").VideoImageFormat | null;
        isLambda: boolean;
        fromUi: import("@remotion/renderer").StillImageFormat | null;
    }) => {
        format: import("@remotion/renderer").StillImageFormat;
        source: string;
    };
    minimist: typeof minimist;
    findEntryPoint: ({ args, logLevel, remotionRoot, allowDirectory, }: {
        args: (string | number)[];
        remotionRoot: string;
        logLevel: import("@remotion/renderer").LogLevel;
        allowDirectory: boolean;
    }) => {
        file: string | null;
        remainingArgs: (string | number)[];
        reason: "argument passed - found in cwd" | "argument passed - found in root" | "argument passed" | "config file" | "common paths" | "none found";
    };
    getVideoImageFormat: ({ codec, uiImageFormat, }: {
        codec: ReturnType<() => import("@remotion/renderer").CodecOrUndefined>;
        uiImageFormat: import("@remotion/renderer").VideoImageFormat | null;
    }) => import("@remotion/renderer").VideoImageFormat;
    printCompositions: (compositions: import("remotion").VideoConfig[], logLevel: import("@remotion/renderer").LogLevel) => void;
    listOfRemotionPackages: string[];
    shouldUseNonOverlayingLogger: ({ logLevel, }: {
        logLevel: import("@remotion/renderer").LogLevel;
    }) => boolean;
    getCompositionWithDimensionOverride: ({ height, width, args, compositionIdFromUi, chromiumOptions, envVariables, port, puppeteerInstance, timeoutInMilliseconds, browserExecutable, serveUrlOrWebpackUrl, indent, serializedInputPropsWithCustomSchema, logLevel, server, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, binariesDirectory, onBrowserDownload, chromeMode, }: {
        height: number | null;
        width: number | null;
        args: (string | number)[];
        compositionIdFromUi: string | null;
        timeoutInMilliseconds: number;
        puppeteerInstance: import("@remotion/renderer").HeadlessBrowser | undefined;
        envVariables: Record<string, string>;
        chromiumOptions: import("@remotion/renderer").ChromiumOptions;
        port: number | null;
        browserExecutable: import("@remotion/renderer").BrowserExecutable | null;
        serveUrlOrWebpackUrl: string;
        indent: boolean;
        logLevel: import("@remotion/renderer").LogLevel;
        serializedInputPropsWithCustomSchema: string;
        server: import("@remotion/renderer").RemotionServer;
        offthreadVideoCacheSizeInBytes: number | null;
        offthreadVideoThreads: number | null;
        binariesDirectory: string | null;
        onBrowserDownload: import("@remotion/renderer").OnBrowserDownload;
        chromeMode: import("@remotion/renderer").ChromeMode;
    }) => Promise<{
        compositionId: string;
        reason: string;
        config: import("remotion").VideoConfig;
        argsAfterComposition: (string | number)[];
    }>;
    defaultBrowserDownloadProgress: ({ indent, logLevel, quiet, }: {
        indent: boolean;
        logLevel: import("@remotion/renderer").LogLevel;
        quiet: boolean;
    }) => import("@remotion/renderer").OnBrowserDownload;
    LABEL_WIDTH: number;
    printFact: (printLevel: import("@remotion/renderer").LogLevel) => ({ indent, logLevel, left, right, color, link, }: {
        indent: boolean;
        logLevel: import("@remotion/renderer").LogLevel;
        left: string;
        right: string;
        link?: string;
        color: "blue" | "blueBright" | "gray" | undefined;
    }) => void;
    makeHyperlink: ({ text, url, fallback, }: {
        text: string | ((clickInstruction: string) => string);
        url: string;
        fallback: string;
    }) => string;
    supportsHyperlink: typeof supportsHyperlink;
    getGitSource: ({ remotionRoot, disableGitSource, logLevel, }: {
        remotionRoot: string;
        disableGitSource: boolean;
        logLevel: import("@remotion/renderer").LogLevel;
    }) => import("@remotion/studio-shared").GitSource | null;
};
