diff --git a/src/@types/it-length-prefixed/index.d.ts b/src/@types/it-length-prefixed/index.d.ts new file mode 100644 index 0000000..9dc8269 --- /dev/null +++ b/src/@types/it-length-prefixed/index.d.ts @@ -0,0 +1,39 @@ +declare module "it-length-prefixed" { + /* eslint-disable @typescript-eslint/interface-name-prefix */ + import BufferList from "bl"; + import {Buffer} from "buffer" + + interface LengthDecoderFunction { + (data: Buffer | BufferList): number; + bytes: number; + } + + interface LengthEncoderFunction { + (value: Buffer, target: number, offset: number): number|Buffer; + bytes: number; + } + + interface Encoder { + (options?: Partial<{lengthEncoder: LengthEncoderFunction}>): AsyncGenerator; + single: (chunk: Buffer, options?: Partial<{lengthEncoder: LengthEncoderFunction}>) => BufferList; + MIN_POOL_SIZE: number; + DEFAULT_POOL_SIZE: number; + } + + interface DecoderOptions { + lengthDecoder: LengthDecoderFunction; + maxLengthLength: number; + maxDataLength: number; + } + + interface Decoder { + (options?: Partial): AsyncGenerator; + fromReader: (reader: any, options?: Partial) => BufferList; + MAX_LENGTH_LENGTH: number; + MAX_DATA_LENGTH: number; + } + + export const encode: Encoder; + export const decode: Decoder; + +}