/** * A transform stream that only transforms from the zero-indexed `start` and * `end` bytes (both inclusive). * * @example Basic usage * ```ts * import { ByteSliceStream } from "@std/streams/byte-slice-stream"; * import { assertEquals } from "@std/assert"; * * const stream = ReadableStream.from([ * new Uint8Array([0, 1]), * new Uint8Array([2, 3, 4]), * ]); * const slicedStream = stream.pipeThrough(new ByteSliceStream(1, 3)); * * assertEquals( * await Array.fromAsync(slicedStream), * [new Uint8Array([1]), new Uint8Array([2, 3])] * ); * ``` * * @example Get a range of bytes from a fetch response body * ```ts * import { ByteSliceStream } from "@std/streams/byte-slice-stream"; * import { assertEquals } from "@std/assert"; * * const response = await fetch("https://example.com"); * const rangedStream = response.body! * .pipeThrough(new ByteSliceStream(3, 8)); * const collected = await Array.fromAsync(rangedStream); * assertEquals(collected[0]?.length, 6); * ``` */ import * as dntShim from "../../../../../_dnt.shims.js"; export declare class ByteSliceStream extends dntShim.TransformStream { #private; /** * Constructs a new instance. * * @param start The zero-indexed byte index to start reading from. * @param end The zero-indexed byte index to stop reading at. Inclusive. */ constructor(start?: number, end?: number); } //# sourceMappingURL=byte_slice_stream.d.ts.map