import type { _NSDictionary } from "../Foundation/NSDictionary.js";
import type { _NSNumber } from "../Foundation/NSNumber.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _CMIOExtensionPropertyState } from "./CMIOExtensionPropertyState.js";
import type { CMIOExtensionProperty } from "./CMIOExtensionProperty.js";
export declare class _CMIOExtensionStreamProperties extends _NSObject {
    static alloc(): _CMIOExtensionStreamProperties;
    static new(): _CMIOExtensionStreamProperties;
    init(): _CMIOExtensionStreamProperties;
    /**
     * Return a stream properties instance. The dictionary of properties. A CMIOExtensionStreamProperties instance.
     */
    static streamPropertiesWithDictionary$(propertiesDictionary: _NSDictionary): _CMIOExtensionStreamProperties;
    /**
     * Initialize a stream properties instance. The dictionary of properties. A CMIOExtensionStreamProperties instance.
     */
    initWithDictionary$(propertiesDictionary: _NSDictionary): _CMIOExtensionStreamProperties;
    /**
     * Set the property value. The property state. The property key. Setting nil to propertyState does remove the property.
     */
    setPropertyState$forProperty$(propertyState: _CMIOExtensionPropertyState | null, property: CMIOExtensionProperty): void;
    /**
     * The active format index. The property key is CMIOExtensionPropertyStreamActiveFormatIndex.
     */
    activeFormatIndex(): _NSNumber;
    setActiveFormatIndex$(value: _NSNumber): void;
    /**
     * The frame duration. The property key is CMIOExtensionPropertyStreamFrameDuration. The dictionary needs to be a dictionary representing a CMTime struct that is consistent with the frame duration specification provided by the current active format.
     */
    frameDuration(): _NSDictionary;
    setFrameDuration$(value: _NSDictionary): void;
    /**
     * The maximum frame duration. The property key is CMIOExtensionPropertyStreamMaxFrameDuration. The dictionary needs to be a dictionary representing a CMTime struct that is consistent with the frame duration specification provided by the current active format.
     */
    maxFrameDuration(): _NSDictionary;
    setMaxFrameDuration$(value: _NSDictionary): void;
    /**
     * The sink stream property buffer queue size. The property key is CMIOExtensionPropertyStreamSinkBufferQueueSize.
     */
    sinkBufferQueueSize(): _NSNumber;
    setSinkBufferQueueSize$(value: _NSNumber): void;
    /**
     * The sink stream property for number of buffers required for startup. The property key is CMIOExtensionPropertyStreamSinkBuffersRequiredForStartup.
     */
    sinkBuffersRequiredForStartup(): _NSNumber;
    setSinkBuffersRequiredForStartup$(value: _NSNumber): void;
    /**
     * The sink stream property buffer underrun count. The property key is CMIOExtensionPropertyStreamSinkBufferUnderrunCount.
     */
    sinkBufferUnderrunCount(): _NSNumber;
    setSinkBufferUnderrunCount$(value: _NSNumber): void;
    /**
     * The sink stream property end of data. The property key is CMIOExtensionPropertyStreamSinkEndOfData.
     */
    sinkEndOfData(): _NSNumber;
    setSinkEndOfData$(value: _NSNumber): void;
    /** The dictionary of properties. The dictionary containing all keys and values. */
    propertiesDictionary(): _NSDictionary;
    setPropertiesDictionary$(value: _NSDictionary): void;
}
