import type { AVOFormatContext } from "../AVFormatContext.ts"; import { AVFormat, type AVPacket, type AVCodecID } from "@libmedia/avutil"; export default abstract class OFormat { type: AVFormat; abstract init(formatContext: AVOFormatContext): number; destroy(formatContext: AVOFormatContext): Promise; abstract writeHeader(formatContext: AVOFormatContext): number; abstract writeAVPacket(formatContext: AVOFormatContext, avpacket: pointer): number; abstract flush(formatContext: AVOFormatContext): number; abstract writeTrailer(formatContext: AVOFormatContext): number; abstract getCapabilities(): AVCodecID[]; static Capabilities: AVCodecID[]; }