///
import * as streams from 'stream';
import Duplexify from 'duplexify';
import { InternalHolder, Options } from './types';
import { Header } from './header';
export interface RequestHeader {
name: string;
}
export declare abstract class AbstractCommon extends Duplexify {
protected readonly writeStream: streams.PassThrough;
protected readonly readStream: streams.Writable;
protected readonly holder: InternalHolder;
private readonly _receiveBuffer;
private _receiveHeader;
protected _upgradeRequested: boolean;
protected _upgraded: boolean;
constructor(options?: Partial);
get upgraded(): boolean;
protected abstract handleIncoming(header: Header, content: Buffer | null): Promise;
protected sendPayload(header: Partial, data: Uint8Array | null): Promise;
protected upgradeTo(writable: streams.Writable, readable: streams.Readable): void;
}
//# sourceMappingURL=base.d.ts.map