import { BaseAudioChannel } from './BaseAudioChannel';
import { IAudioChannel } from './IAudioChannel';
export declare class StreamingAudioChannel extends BaseAudioChannel implements IAudioChannel {
    static maxChannels: number;
    static _channels: Array<StreamingAudioChannel>;
    private _sourceOpenDelegate;
    private _updateEndDelegate;
    private _sourceBuffer;
    private _sourceDirty;
    private _isQueuing;
    private _isOpening;
    private _buffer;
    private _offset;
    private _volume;
    private _groupID;
    private _groupVolume;
    private _groupPan;
    private _startTime;
    private _duration;
    private _audio;
    private _mediaSource;
    private _urlString;
    static stopAllSounds(channelGroup?: number): void;
    static setChannelGroupVolume(value: number, channelGroup?: number): void;
    get duration(): number;
    get currentTime(): number;
    get groupID(): number;
    set groupID(value: number);
    get groupVolume(): number;
    set groupVolume(value: number);
    get groupPan(): number;
    set groupPan(value: number);
    get volume(): number;
    set volume(value: number);
    isPlaying(): boolean;
    isLooping(): boolean;
    isDecoding(): boolean;
    get pan(): number;
    set pan(value: number);
    constructor(groupID?: number, groupVolume?: number, groupPan?: number);
    restart(): boolean;
    play(buffer: ArrayBuffer, offset?: number, loop?: boolean | number): void;
    private stopInternally;
    stop(): void;
    private _sourceOpen;
    private _queueBuffer;
    private _updateEnd;
    private _onTimeUpdate;
    private _updateSource;
    private _disposeSource;
}
//# sourceMappingURL=StreamingAudioChannel.d.ts.map