UNPKG

@ffmpeg/ffmpeg

Version:

FFmpeg WebAssembly version for browser

98 lines (97 loc) 2.61 kB
export type FFFSPath = string; /** * ffmpeg-core loading configuration. */ export interface FFMessageLoadConfig { /** * `ffmpeg-core.js` URL. * * @defaultValue `https://unpkg.com/@ffmpeg/core@${CORE_VERSION}/dist/umd/ffmpeg-core.js`; */ coreURL?: string; /** * `ffmpeg-core.wasm` URL. * * @defaultValue `https://unpkg.com/@ffmpeg/core@${CORE_VERSION}/dist/umd/ffmpeg-core.wasm`; */ wasmURL?: string; /** * `ffmpeg-core.worker.js` URL. * * @defaultValue `https://unpkg.com/@ffmpeg/core-mt@${CORE_VERSION}/dist/umd/ffmpeg-core.worker.js`; */ workerURL?: string; } export interface FFMessageExecData { args: string[]; timeout?: number; } export interface FFMessageWriteFileData { path: FFFSPath; data: FileData; } export interface FFMessageReadFileData { path: FFFSPath; encoding: string; } export interface FFMessageDeleteFileData { path: FFFSPath; } export interface FFMessageRenameData { oldPath: FFFSPath; newPath: FFFSPath; } export interface FFMessageCreateDirData { path: FFFSPath; } export interface FFMessageListDirData { path: FFFSPath; } /** * @remarks * Only deletes empty directory. */ export interface FFMessageDeleteDirData { path: FFFSPath; } export type FFMessageData = FFMessageLoadConfig | FFMessageExecData | FFMessageWriteFileData | FFMessageReadFileData | FFMessageDeleteFileData | FFMessageRenameData | FFMessageCreateDirData | FFMessageListDirData | FFMessageDeleteDirData; export interface Message { type: string; data?: FFMessageData; } export interface FFMessage extends Message { id: number; } export interface FFMessageEvent extends MessageEvent { data: FFMessage; } export interface LogEvent { type: string; message: string; } export interface ProgressEvent { progress: number; time: number; } export type ExitCode = number; export type ErrorMessage = string; export type FileData = Uint8Array | string; export type IsFirst = boolean; export type OK = boolean; export interface FSNode { name: string; isDir: boolean; } export type CallbackData = FileData | ExitCode | ErrorMessage | LogEvent | ProgressEvent | IsFirst | OK | Error | FSNode[] | undefined; export interface Callbacks { [id: number | string]: (data: CallbackData) => void; } export type LogEventCallback = (event: LogEvent) => void; export type ProgressEventCallback = (event: ProgressEvent) => void; export interface FFMessageEventCallback { data: { id: number; type: string; data: CallbackData; }; }