UNPKG

@fails-components/webtransport

Version:

A component to add webtransport support (server and client) to node.js using libquiche

144 lines 4.26 kB
export class Http2WebTransportStream { /** * @param {{streamid: bigint, * unidirectional: boolean, * incoming: boolean, * capsuleParser: ParserBase * sendWindowOffset: Number, * receiveWindowOffset: Number, * shouldAutoTuneReceiveWindow: boolean * receiveWindowSizeLimit: Number, * sessionFlowController: FlowController, * streamIdManager: StreamIdManager}} args * */ constructor({ streamid, unidirectional, incoming, capsuleParser, sendWindowOffset, receiveWindowOffset, shouldAutoTuneReceiveWindow, receiveWindowSizeLimit, sessionFlowController, streamIdManager }: { streamid: bigint; unidirectional: boolean; incoming: boolean; capsuleParser: ParserBase; sendWindowOffset: number; receiveWindowOffset: number; shouldAutoTuneReceiveWindow: boolean; receiveWindowSizeLimit: number; sessionFlowController: FlowController; streamIdManager: StreamIdManager; }); /** @type {import('../stream').HttpWTStream} */ jsobj: import('../stream').HttpWTStream; streamid: bigint; /** @type {Array<ReadDataInt>} */ incomdata: Array<ReadDataInt>; capsuleParser: ParserBase; /** @type {Array<{buf?:Uint8Array,fin:boolean}>} */ outgochunks: { buf?: Uint8Array | undefined; fin: boolean; }[]; flowController: FlowController; sessionFlowController: FlowController; streamIdManager: import("./streamidmanager.js").StreamIdManager; final: boolean; finalmessagesend: boolean; stopReading_: boolean; drainReads_: boolean; recvBytes: number; outgoingClosed_: boolean; incomingClosed_: boolean; sendInitialParameters(): void; /** * @param {Object} obj * @param {Uint8Array|undefined} obj.data * @param {Boolean} obj.fin */ recvData({ data, fin }: { data: Uint8Array | undefined; fin: boolean; }): void; processRead(): void; startReading(): void; drainReads(): void; stopReading(): void; /** * @param {'resetStream'|'stopSending'} type */ onStreamSignal(type: 'resetStream' | 'stopSending'): void; closeIncoming(): void; closeOutgoing(): void; onClose(): void; /** * @param {Number} code */ stopSending(code: number): void; onFin(): void; /** * @param {Number} code */ resetStream(code: number): void; /** * @param {Uint8Array} buf */ writeChunk(buf: Uint8Array): void; hasPendingData(): boolean; drainWrites(): void; streamFinal(): void; /** * * @param {{sendOrder: bigint, sendGroupId: bigint}} args */ updateSendOrderAndGroup({ sendOrder, sendGroupId }: { sendOrder: bigint; sendGroupId: bigint; }): void; /** * @param {bigint} windowOffset */ sendWindowUpdate(windowOffset: bigint): void; /** * @param {bigint} windowOffset */ sendBlocked(windowOffset: bigint): void; /** * @param {bigint} pos */ reportBlocked(pos: bigint): void; connected(): boolean; /** * @param {{ code: number, reason: string }} arg */ closeConnection({ code, reason }: { code: number; reason: string; }): void; smoothedRtt(): any; } /** * WebTransport stream events */ export type WebTransportStreamEventHandler = import('../types').WebTransportStreamEventHandler; /** * WebTransport stream events */ export type StreamRecvSignalEvent = import('../types').StreamRecvSignalEvent; /** * WebTransport stream events */ export type StreamReadEvent = import('../types').StreamReadEvent; /** * WebTransport stream events */ export type StreamWriteEvent = import('../types').StreamWriteEvent; /** * WebTransport stream events */ export type StreamNetworkFinishEvent = import('../types').StreamNetworkFinishEvent; /** * WebTransport stream events */ export type ReadDataInt = import('../types').ReadDataInt; /** * WebTransport stream events */ export type StreamIdManager = import('./streamidmanager.js').StreamIdManager; import { ParserBase } from "./parserbase.js"; import { FlowController } from "./flowcontroller.js"; //# sourceMappingURL=stream.d.ts.map