import AppleTag from "./appleTag"; import { File, ReadStyle } from "../file"; import { IFileAbstraction } from "../fileAbstraction"; import { Properties } from "../properties"; import { Tag, TagTypes } from "../tag"; /** * Provides tagging and properties support for Mpeg4 files. */ export default class Mpeg4File extends File { private readonly _udtaBoxes; private _tag; private _properties; /** @inheritDoc */ constructor(file: IFileAbstraction | string, readStyle: ReadStyle); /** @inheritDoc */ get tag(): AppleTag; /** @inheritDoc */ get properties(): Properties; /** @inheritDoc */ getTag(types: TagTypes, create: boolean): Tag; /** @inheritDoc */ removeTags(types: TagTypes): void; /** @inheritDoc */ save(): void; /** * Find the udta box within our collection that contains the Apple ILST data. * @returns IsoUserDataBox UDTA box within our collection that contains the Apple ILST data. */ private findAppleTagUdta; /** * Gets if there is a "udta" with ILST present in our collection * @returns boolean `true` if there is a UDTA with ILST present in our collection */ private isAppleTagUdtaPresent; private read; }