import { AccessHubMessageType, StreamType } from '../../entity/AccessHubDefine';
import { ZegoLogger } from '../../util/logger';
import { ZegoWssLink } from '../net/ZegoWssLink';
import { ZegoLinkStream } from './ZegoLinkStream';
export declare class StreamManager {
    private _zegoLink;
    private _logger;
    streamID: number;
    pcStreams: ZegoLinkStream[];
    streams: ZegoLinkStream[];
    hbStream: ZegoLinkStream | undefined;
    constructor(_zegoLink: ZegoWssLink, _logger: ZegoLogger);
    destroy(): void;
    createStream(streamType: StreamType): ZegoLinkStream;
    getHbStream(): ZegoLinkStream;
    getFreeStream(streamType: StreamType): ZegoLinkStream;
    onPushEvent(streamID: number, msgType: AccessHubMessageType, msg: any, extras?: any): void;
    getNextStreamID(): number;
    refreshAllStream(): void;
    clearStreams(): void;
    setLogger(logger: ZegoLogger): void;
}
