import FullBox from "./fullBox"; import Mpeg4BoxHeader from "../mpeg4BoxHeader"; import { ByteVector } from "../../byteVector"; import { File } from "../../file"; /** * Specifies the type of data contained in a box. */ export declare enum AppleDataBoxFlagType { /** * The box contains binary data. */ ContainsData = 0, /** * The box contains UTF-8 text. */ ContainsText = 1, /** * The box contains a raw JPEG image. */ ContainsJpegData = 13, /** * The box contains a raw PNG image. */ ContainsPngData = 14, /** * The box contains data for a tempo box. */ ForTempo = 21, /** * The box contains a raw BMP image. */ ContainsBmpData = 27 } /** * This class extends {@link FullBox} to provide an implementation of an Apple DataBox. */ export declare class AppleDataBox extends FullBox { /** * Private constructor to force construction via static functions. */ private constructor(); /** * Constructs and initializes a new instance of {@link AppleDataBox} with a provided header and handler * by reading the contents from a specified file. * @param header A {@link Mpeg4BoxHeader} object containing the header to use for the new instance. * @param file A {@link File} object to read the contents of the box from. * @param handlerType Type of the handler box object containing the handler that applies to the * new instance, or undefined if no handler applies. */ static fromFile(header: Mpeg4BoxHeader, file: File, handlerType: ByteVector): AppleDataBox; /** * Constructs and initializes a new instance of {@link AppleDataBox} with specified data and flags. * @param data A {@link ByteVector} object containing the data to store in the new instance. * @param flags A value containing flags to use for the new instance. */ static fromDataAndFlags(data: ByteVector, flags: number): AppleDataBox; /** * Gets the text contained in the current instance. */ get text(): string; /** * Sets the text contained in the current instance. */ set text(v: string); /** * Renders the headers for the box. * @returns ByteVector Rendered headers of the current instance */ renderBoxHeaders(): ByteVector[]; }