import type { _AVMetadataItem } from "./AVMetadataItem.js";
import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSDate } from "../Foundation/NSDate.js";
import type { _NSDictionary } from "../Foundation/NSDictionary.js";
import type { _NSLocale } from "../Foundation/NSLocale.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { CMTime } from "../structs/CMTime.js";
export declare class _AVMutableMetadataItem extends _AVMetadataItem {
    static alloc(): _AVMutableMetadataItem;
    static new(): _AVMutableMetadataItem;
    init(): _AVMutableMetadataItem;
    /** @method metadataItem @abstract Returns an instance of AVMutableMetadataItem. */
    static metadataItem(): _AVMutableMetadataItem;
    /**
     * Indicates the identifier of the metadata item. Publicly defined identifiers are declared in AVMetadataIdentifiers.h. This property throws an exception if identifier is not of the form \"<keySpace>/<key>\".
     */
    identifier(): _NSString | null;
    setIdentifier$(value: _NSString | null): void;
    /**
     * indicates the IETF BCP 47 (RFC 4646) language identifier of the metadata item; may be nil if no language tag information is available
     */
    extendedLanguageTag(): _NSString | null;
    setExtendedLanguageTag$(value: _NSString | null): void;
    /**
     * indicates the locale of the metadata item; may be nil if no locale information is available for the metadata item
     */
    locale(): _NSLocale | null;
    setLocale$(value: _NSLocale | null): void;
    /** indicates the timestamp of the metadata item. */
    time(): CMTime;
    setTime$(value: CMTime): void;
    /** indicates the duration of the metadata item */
    duration(): CMTime;
    setDuration$(value: CMTime): void;
    /**
     * indicates the data type of the metadata item's value. Publicly defined data types are declared in <CoreMedia/CMMetadata.h>
     */
    dataType(): _NSString | null;
    setDataType$(value: _NSString | null): void;
    /** provides the value of the metadata item */
    value(): _NSObject | _NSCopying | null;
    setValue$(value: _NSObject | _NSCopying | null): void;
    /**
     * Provides a dictionary of the additional attributes. Extra attributes of metadata items are related to specifics of their carriage in their container format. Keys for extra attributes are declared in AVMetadataFormat.h.
     */
    extraAttributes(): _NSDictionary | null;
    setExtraAttributes$(value: _NSDictionary | null): void;
    /** indicates the start date of the timed metadata; nil if no date is indicated */
    startDate(): _NSDate | null;
    setStartDate$(value: _NSDate | null): void;
    /**
     * Indicates the keyspace of the metadata item's key; this will typically be the default keyspace for the metadata container in which the metadata item is stored.
     */
    keySpace(): _NSString | null;
    setKeySpace$(value: _NSString | null): void;
    /**
     * Indicates the key of the metadata item. Metadata item keys that are not instances NSString, NSNumber, or NSData cannot be converted to metadata identifiers; they also cannot be written to media resources via AVAssetExportSession or AVAssetWriter.
     */
    key(): _NSObject | _NSCopying | null;
    setKey$(value: _NSObject | _NSCopying | null): void;
}
