declare module 'react-native-ffmpeg' { export class LogLevel { static AV_LOG_STDERR: number; static AV_LOG_QUIET: number; static AV_LOG_PANIC: number; static AV_LOG_FATAL: number; static AV_LOG_ERROR: number; static AV_LOG_WARNING: number; static AV_LOG_INFO: number; static AV_LOG_VERBOSE: number; static AV_LOG_DEBUG: number; static AV_LOG_TRACE: number; static logLevelToString(number): string; } export interface Log { executionId: number; level: LogLevel; message: string; } export interface Statistics { executionId: number; videoFrameNumber: number; videoFps: number; videoQuality: number; size: number; time: number; bitrate: number; speed: number; } export interface Execution { executionId: number; startTime: number; command: string; } export interface CompletedExecution { executionId: number; returnCode: number; } export class StreamInformation { getAllProperties(): Record; } export class MediaInformation { getStreams(): StreamInformation[]; getMediaProperties(): Record; getAllProperties(): Record; } export class RNFFmpegConfig { static getFFmpegVersion(): Promise; static getPlatform(): Promise; static disableRedirection(): void; static getLogLevel(): Promise; static setLogLevel(level: number): void; static disableLogs(): void; static disableStatistics(): void; static enableLogCallback(newCallback: (log: Log) => void): void; static enableStatisticsCallback(newCallback: (statistics: Statistics) => void): void; static getLastReceivedStatistics(): Promise; static resetStatistics(): void; static setFontconfigConfigurationPath(path: string): void; static setFontDirectory(path: string, mapping?: { [key: string]: string }): void; static getPackageName(): Promise; static getExternalLibraries(): Promise; static getLastReturnCode(): Promise; static getLastCommandOutput(): Promise; static registerNewFFmpegPipe(): Promise; static setEnvironmentVariable(name: string, value: string); static writeToPipe(inputPath: string, pipePath: string): Promise; } export class RNFFmpeg { static executeWithArguments(arguments: string[]): Promise; static execute(command: string): Promise; static executeAsyncWithArguments(arguments: string[], callback: (execution: CompletedExecution) => void): Promise; static executeAsync(command: string, callback: (execution: CompletedExecution) => void): Promise; static cancel(): void; static cancelExecution(executionId: number): void; static listExecutions(): Promise; static parseArguments(command: string): string[]; } export class RNFFprobe { static executeWithArguments(arguments: string[]): Promise; static execute(command: string): Promise; static getMediaInformation(path: string): Promise; } }