/**
 * Probes FFmpeg to check if a specific encoder is available.
 * Returns true if the encoder is supported, false otherwise.
 */
export declare const probeEncoderAvailability: ({ encoderName, binariesDirectory, indent, logLevel, }: {
    encoderName: string;
    binariesDirectory: string | null;
    indent: boolean;
    logLevel: "error" | "info" | "trace" | "verbose" | "warn";
}) => boolean;
/**
 * Resolves the effective hardware acceleration setting by probing FFmpeg
 * for encoder availability. If the preferred hw encoder is not available:
 * - `if-possible` mode: falls back to software encoding
 * - `required` mode: throws a clear error
 */
export declare const resolveHardwareAcceleration: ({ codec, hardwareAcceleration, binariesDirectory, indent, logLevel, crf, encodingMaxRate, encodingBufferSize, }: {
    codec: "aac" | "av1" | "gif" | "h264" | "h264-mkv" | "h264-ts" | "h265" | "mp3" | "prores" | "vp8" | "vp9" | "wav";
    hardwareAcceleration: "disable" | "if-possible" | "required";
    binariesDirectory: string | null;
    indent: boolean;
    logLevel: "error" | "info" | "trace" | "verbose" | "warn";
    crf: unknown;
    encodingMaxRate: string | null;
    encodingBufferSize: string | null;
}) => "disable" | "if-possible" | "required";
