polling.d.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. import { EngineRequest, Transport } from "../transport";
  2. import type { Packet, RawData } from "engine.io-parser";
  3. export declare class Polling extends Transport {
  4. maxHttpBufferSize: number;
  5. httpCompression: any;
  6. private req;
  7. private res;
  8. private dataReq;
  9. private dataRes;
  10. private shouldClose;
  11. private readonly closeTimeout;
  12. /**
  13. * HTTP polling constructor.
  14. */
  15. constructor(req: any);
  16. /**
  17. * Transport name
  18. */
  19. get name(): string;
  20. /**
  21. * Overrides onRequest.
  22. *
  23. * @param {EngineRequest} req
  24. * @package
  25. */
  26. onRequest(req: EngineRequest): void;
  27. /**
  28. * The client sends a request awaiting for us to send data.
  29. *
  30. * @private
  31. */
  32. private onPollRequest;
  33. /**
  34. * The client sends a request with data.
  35. *
  36. * @private
  37. */
  38. private onDataRequest;
  39. /**
  40. * Processes the incoming data payload.
  41. *
  42. * @param data - encoded payload
  43. * @protected
  44. */
  45. onData(data: RawData): void;
  46. /**
  47. * Overrides onClose.
  48. *
  49. * @private
  50. */
  51. onClose(): void;
  52. send(packets: Packet[]): void;
  53. /**
  54. * Writes data as response to poll request.
  55. *
  56. * @param {String} data
  57. * @param {Object} options
  58. * @private
  59. */
  60. private write;
  61. /**
  62. * Performs the write.
  63. *
  64. * @protected
  65. */
  66. protected doWrite(data: any, options: any, callback: any): void;
  67. /**
  68. * Compresses data.
  69. *
  70. * @private
  71. */
  72. private compress;
  73. /**
  74. * Closes the transport.
  75. *
  76. * @private
  77. */
  78. doClose(fn: () => void): void;
  79. /**
  80. * Returns headers for a response.
  81. *
  82. * @param {http.IncomingMessage} req
  83. * @param {Object} headers - extra headers
  84. * @private
  85. */
  86. private headers;
  87. }