import { type ArxSetting } from './Setting.js';
import { BinaryIO } from '../common/BinaryIO.js';
/**
 * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/audio/Ambiance.cpp#L168
 */
export type ArxKey = {
    /** milliseconds */
    start: number;
    loop: number;
    /** milliseconds */
    delayMin: number;
    /** milliseconds */
    delayMax: number;
    volume: ArxSetting;
    pitch: ArxSetting;
    pan: ArxSetting;
    x: ArxSetting;
    y: ArxSetting;
    z: ArxSetting;
};
export declare class Key {
    /**
     * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/audio/Ambiance.cpp#L187
     */
    static readFrom(binary: BinaryIO<ArrayBufferLike>): ArxKey;
    static accumulateFrom(key: ArxKey): ArrayBuffer;
    static sizeOf(): number;
}
